.in {
    display:block;
}
.out {
    display:none;
}

/* =============================================================================
   FULLPAGE
   ========================================================================== */
.section {
	position: relative;
	display:block;
	width:100%;
	text-align:center;
}
.slide {
	position: relative;
	float:left;
	width:100%;
	height:100%;
}


/* =============================================================================
   GAME NAV
   ========================================================================== */
#game_nav {
    position: fixed;
    top:0;
    right:0;
    bottom:0;
    width:170px;
    z-index:10;
    background: -moz-linear-gradient(left,  rgba(0,0,0,0) 0%, rgba(0,0,0,0.65) 100%);
    background: -webkit-linear-gradient(left,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%);
    background: linear-gradient(to right,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=1 );
    transition: .2s ease-in-out;
}

#game_nav ul {
    position: absolute;
    top:50%;
    right:10px;
    transform: translateY(-50%);
    min-width:230px;
    text-align:right;
    overflow:hidden;
}
#game_nav ul:before {
    top:0;
}
#game_nav ul:after {
    bottom:0;
}
#game_nav ul span {
    display:inline-block;
    position: relative;
    line-height:1.4;
    font-size:18px;
    font-family: 'fuji-reg', Arial, "Helvetica CY", Helvetica, sans-serif;
		text-transform:uppercase;
    text-indent:9999;
    transition: .2s ease-in-out;
		margin-right:10px;
		color:rgba(255,255,255,.6);
}
#game_nav ul span:after {
    content:'';
    display:block;
    width:100%;
    height:1px;
    background:#571209;
    position:absolute;
    left:0;
    right:0;
    bottom:0px;
    transform-origin: 50% 50%;
    transform: scaleX(0);
    opacity:0;
    text-shadow: 0 1px 2px rgba(0,0,0,.6);
    transition: .2s ease-in-out;
}
#game_nav ul a {
    display:block;
    cursor: pointer;
    position: relative;
    line-height:50px;
    height:50px;
}
#game_nav ul a i {
    position: relative;
    display:inline-block;
    width:12px;
    height:12px;
    background: transparent;
    border:1px solid #aaa;
    transform: rotate(45deg);
    margin: -2px 10px 0 0;
    transition: .2s ease-in-out;
    box-shadow: 1px 1px 1px 0 rgba(0,0,0,.4);
}
#game_nav ul a i:after {
    content:'';
    width:24px;
    height:24px;
    display:block;
    position: absolute;
    top:-7px;
    left:-7px;
    margin:auto;
    border: 1px solid #c0392b;
    opacity:0;
    transition: .2s ease-in-out;
    transform: scale(0);
    box-shadow: 1px 1px 1px 0 rgba(0,0,0,.4);
}

/* HOVER */
#game_nav ul:hover span {
    opacity:1;
    text-indent:0;
}
#game_nav ul a:hover span,
#game_nav ul a.active span {
    color:rgba(255,255,255,1);
    opacity:1;
    margin-right:20px;
}
#game_nav ul a.active:after,
#game_nav ul a:hover:after {
    background:#571209;
    border:1px solid #571209;
}
#game_nav ul a.active span:after,
#game_nav ul a:hover span:after {
    transform: scaleX(1);
    opacity:1;
}

#game_nav ul a:hover i, 
#game_nav ul a.active i {
    border-color: #fff;
    background: #fff;
}

#game_nav ul a:hover i:after, 
#game_nav ul a.active i:after {
    border-color:#571209;
    opacity:1;
    transform: scale(1);
}



/* =============================================================================
		CONTENEUR
   ========================================================================== */
.infos-container {
	position: relative;
	display:block;
	width:410px;
  padding-top:140px;
	margin-left:50px;
	text-align:left;	
}

/* =============================================================================
   TITRES
   ========================================================================== */
.infos-title {
    display:inline-block;
    position: relative;
	width:415px;
	height:34px;
    margin-bottom:20px;
	background: url(../img/game/title_bg_short.png) no-repeat top left;
    background-size: auto 100%;
    text-align:left;    
}
.infos-title h1 {
    position:relative;
    display:inline-block;
    font-family: 'fuji-reg', Arial, "Helvetica CY", Helvetica, sans-serif;
    font-size:30px;
	text-transform:uppercase;
	color:#000;
	padding:4px 0px 0px 22px;
}



/* =============================================================================
   ZONE TEXTE (SLICK)
   ========================================================================== */
.infos-slick {
    padding:10px 20px;
}
.slick-slide p {
  padding: 0 10px;
}
.infos-text {
    position: relative;		
	background: rgba(0,0,0,.8);
/*    min-height:310px;*/
    padding-bottom: 45px;
}
#section_intro .infos-text {
    min-height:275px;
}
#section_story .infos-text {
    min-height:270px;
}
#section_scifirpg .infos-text {
    min-height:270px;
}
#section_crafting .infos-text {
    min-height:290px;
}
#section_bestiary .infos-text {
    min-height:290px;
}
#section_combat .infos-text {
    min-height:310px;
}
#section_combat .infos-text.skills {
    min-height:auto;
}

.infos-text p {
    color: #fff;
    font-family: 'Tahoma', Arial, "Helvetica CY", Helvetica, sans-serif;
    font-size:14px;
	line-height:20px;
    text-align:justify;
}
.infos-nav {
	position: absolute;
    bottom:0;
    left:0;
    right:0;
    margin:auto;
	display:block;
	height:40px;
}
.infos-nav-bullets {
	width:80%;
	margin:auto;
	text-align:center;
	z-index:10;
}
.infos-bullets {
	position:relative;
	display:inline-block;
	margin-top:-5px;
	width:30px;
	height:30px;	
	background: url(../img/bullet.png) no-repeat;
	background-position: 0px 0px;
	cursor:pointer;
	z-index:10;
}
.infos-bullets:before,
.infos-bullets:after {
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:30px;
	height:30px;	
	background: url(../img/bullet.png) no-repeat;
	background-position: 0px 0px;
	opacity:0;
	transition: .2s ease-in-out;
}
.infos-bullets:before {
	background-position: 0px -30px;
}
.infos-bullets:after {
	background-position: 0px -60px;
}
.infos-bullets:hover:before {
	opacity:1;
}
.infos-bullets.active:after {
	opacity:1;
}

.infos-nav-arrow {
	position: absolute;
	top:-10px;
	width:40px;
	height:40px;	
	z-index:10;
}
.infos-nav-left {
	left:20px;
	background: url(../img/arrow_left.png) no-repeat;
}
.infos-nav-right {
	right:20px;
	background: url(../img/arrow_right.png) no-repeat;
}
.infos-nav-left:before,
.infos-nav-left:after, 
.infos-nav-right:before,
.infos-nav-right:after {
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:40px;
	height:40px;	
	background-position: 0px 0px;
	opacity:0;
	transition: .2s ease-in-out;
}
.infos-nav-left:before,
.infos-nav-left:after {
	background: url(../img/arrow_left.png) no-repeat;
}
.infos-nav-right:before,
.infos-nav-right:after {
	background: url(../img/arrow_right.png) no-repeat;
}
.infos-nav-left:before, 
.infos-nav-right:before {
	background-position: 0px -40px;
}
.infos-nav-left:after, 
.infos-nav-right:after {
	background-position: 0px -80px;
}
.infos-nav-left:hover:before, 
.infos-nav-right:hover:before, 
.infos-nav-left:active:after, 
.infos-nav-right:active:after {
	opacity:1;
}



/* CADRE */
.infos-slick:before,
.infos-slick:after {
	content:'';
	display:block;
	width:126px;
	height:61px;
	position: absolute;
	top:0;
	z-index:10;
}
.infos-slick:before {
	left:0;
	background: url(../img/deco-block-left.png) no-repeat center center;
}
.infos-slick:after {
	right:0;
	background: url(../img/deco-block-right.png) no-repeat center center;
}
.infos-text:before,
.infos-text:after {
	content:'';
	position: absolute;
	bottom:0;	
	z-index:0;
}
.infos-text:before {	
	width:180px;
	height:40px;	
	left:0;
	background: url(../img/deco-block-bottom_left.png) no-repeat bottom left;
}
.infos-text:after {
	width:260px;
	height:12px;
	right:0;
	background: url(../img/deco-block-bottom_right.png) no-repeat bottom right;
}

/* =============================================================================
   VIDEO
   ========================================================================== */
.infos-video {
    margin:20px auto;
    position:relative;
    box-shadow: 0 2px 4px 0 rgba(0,0,0,.4);
    text-align:center;
    cursor: pointer;
}
.infos-video:before,
.infos-video:after {
	content:'';
	display:block;
	width:126px;
	height:61px;
	position: absolute;
	top:0;
	z-index:10;
}
.infos-video:before {
	left:0;
	background: url(../img/deco-block-left.png) no-repeat center center;
}
.infos-video:after {
	right:0;
	background: url(../img/deco-block-right.png) no-repeat center center;
}
.infos-video-img {
    max-width:100%;
}
.infos-video-play {	
    max-width:100%;
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
	cursor: pointer;
	transform:translateY(-35%);
}
.infos-video-txt {
	position: absolute;
	left:0;
	right:0;
	bottom:0;
	background: rgba(4,32,44,.8);
	border-top: 1px solid #fff;
}
.infos-video-txt p {
	text-transform: capitalize;
	font-variant: small-caps;
	font-family: 'fuji-reg', 'Times New Roman', serif;
	background: url(../img/pattern_background_block.png) no-repeat center center;
	text-transform: uppercase;
	text-shadow: 0 1px 1px rgba(0,0,0,.6);
  color: #222;
	padding:10px 10px 5px;
	margin:0;
	vertical-align:bottom;
}


/* =============================================================================
   CHARACTERS
   ========================================================================== */
#characters-container {
	position: relative;
	display:block;
	width:100%;
	height:100%;
	text-align:left;
	overflow:hidden;
}
#char-container {
/*  position: relative;*/
    width:65%;
    padding:180px 0px 0px 50px;
}
	 
/* CHARACTERS NAV  */
#char-nav {
	position:relative;
    width:500px;
    height:100px;
	background: url(../img/game/characters/nav-bg.png) no-repeat top left;	
	z-index:50;
    text-align:center;
    margin-bottom:15px;
}
#char-nav ul {
	position: relative;
    width:100%;
	z-index:2;
	display:block;
	margin:0;
	padding:0;
}
#char-nav li {
	position: relative;
	display:inline-block;
	list-style: none;	
	cursor:pointer;
	width:80px;
	height:auto;
    padding:0;
    margin:0;
}
#char-nav li img {
    -webkit-filter: grayscale(100%) brightness(80%) contrast(100%);
    filter: grayscale(100%) brightness(80%) contrast(100%);
    transition: .4s ease-in-out;
}
#char-nav li.active img {
   -webkit-filter: none;
   filter: none;
}

/* CHARACTERS TEXT */
.char-text {
    position: relative;	
	width:460px;
	background: rgba(0,0,0,.8);
	/*
	background: repeating-linear-gradient(
		45deg,
		rgba(0,0,0,.6),
		rgba(0,0,0,1) 2px,
		rgba(0,0,0,.6) 4px
	);
	*/   
	padding:20px;
}
.char-text ul {
    padding:0;
}
.char-text li {
    font-size:20px;
    line-height:28px;
    font-family: 'fuji-reg', 'Arial', sans-serif;
}
.char-text li:before {
    content:'';
    display:inline-block;
    width:6px;
    height:6px;
    border:1px solid #fff;
    background: transparent;
    margin: -2px 10px 0 5px;
    vertical-align:middle;
    transform: rotate(45deg);
}
.char-text h2 {
	margin-bottom:15px;
	font-weight:normal;
	font-family: "fuji-reg", Arial, "Helvetica CY", Helvetica, sans-serif;
    text-transform: uppercase;    
    font-size:26px;
    margin: 10px 0;
    text-align:center;
}

.char-text p {
    color: #fff;
    font-family: 'Tahoma', Arial, "Helvetica CY", Helvetica, sans-serif;
    font-size:14px;
	line-height:18px;
    text-align:justify;
    margin-bottom:20px;
}
.char-text:before {
	content:'';
	position: absolute;
	width:126px;
	height:61px;	
	top:0;
	z-index:10;
	left:0;
	background: url(../img/deco-block-left.png) no-repeat center center;
}
.char-text:after {
	content:'';
	position: absolute;
	bottom:0;	
	z-index:0;
	width:180px;
	height:40px;	
	left:0;
	background: url(../img/deco-block-bottom_left.png) no-repeat bottom right;
}

/* CHARACTERS ARTWORK */
#char-artwork {
	position: absolute;
	bottom:0px;	
	right:0;
    left:0;
    margin:auto;
    z-index:-1;
    width:600px;
    height:680px;
    opacity:0;
    transition:.2s ease-in-out;
}
.char-anim {
    position: absolute;
    bottom:0;
    right:0;
}
.char-anim img {
    width:100%;
}
/* CHARACTERS SKILLS */
.char-skills {		
	position: relative;
	display:block;	
	width:100%;
	height:80px;
	text-align:left;
	font-family: "fuji-reg", Arial, "Helvetica CY", Helvetica, sans-serif;
    text-transform: uppercase;
}
.char-text[data-char="scott"] .char-skills {		
	height:55px;
}
.char-skills-title {
	position: relative;
	display:inline-block;
	float:left;
	width:auto;
	height:100%;
	text-align:right;
	padding:31px 20px 0px 10px;
}
.char-text[data-char="scott"] .char-skills-title  {	
	padding:19px 20px 0px 10px;	
}
.char-skills-title:after {
    content:'';
    display:block;
    width:2px;
    height:100%;
    background: url(../img/game/sous_nav_sep.png) repeat-y top left;
    position: absolute;
    top:0;
    right:0;
    margin:auto;
}	
.char-skills-title h3 {	
	font-family: "fuji-reg", Arial, "Helvetica CY", Helvetica, sans-serif;
    text-transform: uppercase;
	font-size:21px;	
	font-weight:normal;	
    padding:0;
	margin:0;
}
.char-skills ul {
	position: relative;
	display:inline-block;
	float:left;
    padding:0;
	margin:0;
	text-align:left;
}
.char-skills li {
	font-size:16px;	
	padding:0;
	margin-left:10px;
}

/* =============================================================================
   COMBAT
   ========================================================================== */
.skills {
    padding:10px;
    margin-top:20px;
}
.skills h2 {
    text-align:center;
    font-size:26px;
    text-transform: uppercase;
    font-family: 'fuji-reg', Arial, "Helvetica CY", Helvetica, sans-serif;
    margin:10px 0 15px 0;
    font-weight:normal;
}
.skills ul {
    text-align:center;
    padding:0;
    margin-bottom:0;
}
.skills ul:after {
    content:'';
    display:block;
    clear:both;
}
.skills li {
    position: relative;
    display:inline-block;
    padding:0 10px;
    font-size:14px;
    cursor: pointer;
}
.skills li:after {
    content:'';
    display:block;
    width:2px;
    height:40px;
    background: url(../img/game/sous_nav_sep.png) no-repeat center center;
    position: absolute;
    top:0;
    right:0;
    margin:auto;
}
.skills li:last-child:after {
    display:none;
}
.skill-icon {
    display:inline-block;
    width:73px;
    height:51px;
    margin-bottom:5px;
}

.skill-descr {
    position: relative;
    overflow:hidden;
}
.skill-descr p {
    margin:0;
}
.skill-descr div {
    opacity:1;
    transform: translateY(0);
    transition: .4s ease-in-out;
    padding: 5px 10px 10px 10px;
}
.skill-descr div.off {
    position: absolute;
    top:0;
    left:0;
    opacity:0;
    transform: translateY(10px);
}

/* BATON */
.staves {
    background: url(../img/game/staves.png) no-repeat center center;
}
.staves.active,
.staves:hover {
    background: url(../img/game/staves_active.png) no-repeat center center;
}
/* LAME ET PISTOLET */
.blade-gun {
    background: url(../img/game/blade_gun.png) no-repeat center center;
}
.blade-gun.active,
.blade-gun:hover {
    background: url(../img/game/blade_gun_active.png) no-repeat center center;
}
/* MASSES ET BOUCLIER */
.mace-shield {
    background: url(../img/game/mace_shield.png) no-repeat center center;
}
.mace-shield.active,
.mace-shield:hover {
    background: url(../img/game/mace_shield_active.png) no-repeat center center;
}



/* =============================================================================
   MARS
   ========================================================================== */
.sub-nav {
    margin: 10px 0 20px;
}
.sub-nav ul {
    min-height:23px;
    margin:0;
    padding:0;
}
.sub-nav li {
    position: relative;
    display:inline-block;
    font-size:18px;
    line-height:23px;
    cursor:pointer;
    text-transform: uppercase;
    font-family: 'fuji-reg', "Arial", sans-serif;
    padding: 0 15px;
    color: #fff;
}
.sub-nav li span {
    position: relative;
    display:inline-block;
    padding-top:4px;
    transition: .2s ease-in-out;
}

.sub-nav li span:before {
    content:'';
    display:block;
    width:112%;
    height:100%;
    background: #FFF;
    position: absolute;
    left:-6%;
    bottom:0px;
    transform-origin: 50% 100%;
    transform: scaleY(0);
    transition: .2s ease-in-out;
    z-index:-1;
}

.sub-nav li:after {
    content:'';
    display:block;
    width:1px;
    height:20px;
    background: #fff;
    position: absolute;
    top:0px;
    right:-4px;
    bottom:0;
    margin:auto;
}
/* sub-nav active */
.sub-nav li.active span,
.sub-nav li:hover span {
    color: #222;
}

.sub-nav li.active span:before,
.sub-nav li:hover span:before {
    transform: scaleY(1);
}

.sub-nav li:first-child {
    padding: 0 15px 0 5px;
}

.sub-nav li:last-child:after {
    display:none;
}

.text-title {
    margin-top:15px;
    font-size:32px;
    text-align:center;
    font-family: 'fuji-reg', 'Arial', sans-serif;
    text-transform: uppercase;
}
.text-title span {
    font-size:16px;
    display:inline-block;
    vertical-align:middle;
    margin: -5px 0 0 5px;
}

.text-separator {
    width:60%;
    height:1px;
    display:block;
    margin:15px auto;
    background: #FFF;
}
.text-separator.bigger {
    margin: 25px auto;
}

.infos-inner {
    position: relative;
}

.infos-text {
    transition: .4s ease-in-out;
}

.infos-text.show {
    position: relative;
    transform: translateY(0);
    opacity:1;
    z-index:10;
}
.infos-text.hide {
    position: absolute;
    top:0;
    left:0;
    right:0;
    transform: translateY(50px);
    opacity:0;
    z-index:-1;
}


/* =============================================================================
   LOADING
   ========================================================================== */
#loading {
	position:fixed;
	display: table;
	width:500px;
	height:600px;
	z-index:1500;
}
#loading_content {
	width:50%;
	height:auto;
	display: table-cell;
	vertical-align: middle;
	text-align:center;
}
#loading_percent {
    margin: auto;
    position: absolute;
    bottom:0px;
    left: 0;
    top: 0;
    right: 0;
	width:250px;
	height:110px;
	font-size:16px;
}
#loading_circle1 {
	margin: auto;
    position: absolute;
    bottom: 0;
    left: 0;
    top: 0;
    right: 0;
	background-color: rgba(0,0,0,0);
	border:5px solid rgba(255,255,255,0.9);
	opacity:.9;
	border-right:5px solid rgba(0,0,0,0);
	border-left:5px solid rgba(0,0,0,0);
	border-radius:50px;
	box-shadow: 0 0 35px #75a6ad;
	width:50px;
	height:50px;
    text-align:center; /* centrage horizontal */
	-moz-animation:spinPulse 1s infinite ease-in-out;
	-webkit-animation:spinPulse 1s infinite linear;
}
#loading_circle2 {
	margin: auto;
    position: absolute;
    bottom: 0;
    left: 0;
    top: 0;
    right: 0;
	background-color: rgba(0,0,0,0);
	border:5px solid rgba(255,255,255,0.9);
	opacity:.9;
	border-left:5px solid rgba(0,0,0,0);
	border-right:5px solid rgba(0,0,0,0);
	border-radius:50px;
	box-shadow: 0 0 15px #75a6ad; 
	width:30px;
	height:30px;
	-moz-animation:spinoffPulse 1s infinite linear;
	-webkit-animation:spinoffPulse 1s infinite linear;
}

@-moz-keyframes spinPulse {
	0% { -moz-transform:rotate(160deg); opacity:0; box-shadow:0 0 1px #75a6ad;}
	50% { -moz-transform:rotate(145deg); opacity:1; }
	100% { -moz-transform:rotate(-320deg); opacity:0; }
}
@-moz-keyframes spinoffPulse {
	0% { -moz-transform:rotate(0deg); }
	100% { -moz-transform:rotate(360deg);  }
}
@-webkit-keyframes spinPulse {
	0% { -webkit-transform:rotate(160deg); opacity:0; box-shadow:0 0 1px #75a6ad; }
	50% { -webkit-transform:rotate(145deg); opacity:1;}
	100% { -webkit-transform:rotate(-320deg); opacity:0; }
}
@-webkit-keyframes spinoffPulse {
	0% { -webkit-transform:rotate(0deg); }
	100% { -webkit-transform:rotate(360deg); }
}

/* =============================================================================
   MEDIAQUERIES
   ========================================================================== */

@media screen and (max-width:1650px) {
	.desktop-only {
		display:none;	
	}
}

@media screen and (min-width:1600px) {
    #char-artwork {
        width:800px;
        height:880px;
    }
}

@media screen and (min-width:1100px) {
    /* CRAFTING */
    #section_crafting .infos-container {
        position: absolute;
        bottom:120px;
        right:180px;
        z-index:40;
    }
}

@media screen and (max-width:1100px) {

    .infos-container {
        width:340px;
    }
    .infos-video-txt p {
        font-size: 16px;
    }
    #char-artwork {
        left:initial;
        right:50px;
    }
    .char-anim img {
        width:100%;
    }
}


@media screen and (max-width:1000px) {
    
	.infos-container {
		width:50%;
		float:left;
	}
	#game_nav {
		display:none;
	}

    /* CHARACTERS */
    #char-container {
        width:100%;
        padding:350px 0px 0px 50px;
    }
    #char-artwork {
        right:-100px;
    }
}

@media screen and (max-width:760px) {
    /* CHARACTERS */
    #char-container {
        width:100%;
        padding:180px 0px 0px 50px;
    }
    #char-artwork {
        display:none;
    }
    .infos-container {
        width:80%;
        margin: 0 auto 0;
        padding:140px 0 90px;
        float:none;
    }
    .infos-video {
        max-width:80%;
    }
    #char-nav {
        margin:auto;
    }
    .char-text {
        width:80%;
        margin:auto;
    }
    #char-container {
        padding: 180px 0 0 0;
    }
    #char-artwork {
        width:600px;
        height:680px;
    }
}

@media screen and (max-width:560px) {
    /* GENERAL */
    .side-container {
       width:100%;
    }
	 
	.fp-tableCell {
	    display: table-cell;
	}	

    /* CHARACTERS */
    #char-nav {
        width:88%;
        background:transparent;
    }
    #char-nav {
        width:88%;
        height:auto;
        margin: 0 auto 15px;
    }
    #char-nav li {
        width:18%;
    }
    #char-nav li img {
        width:100%;
    }
    .char-text {
        width:88%;
    }
    .char-skills-title {
        text-align:center;
        display:block;
        float: none;
        height:auto;
        padding: 0;
        margin: 10px auto;
    }
    .char-skills-title:after {
        display:none;
    }
    .char-skills-title h3 {
        font-size:16px;
    }
    .char-skills {
        height:auto;
    }
    .char-text[data-char="scott"] .char-skills {        
        height:auto;
    }
    .char-skills ul {
        float: none;
    }
    .char-skills li {
        font-size: 14px;
    }
    .sub-nav li {
        font-size:16px;
    }

}



@media screen and (max-width:440px) {
    #characters-container {

    text-align:center;
    }
    #char-container {
        width:100%;
        margin:0px auto;
        padding:180px 0px 0px 0px;
    }
    #char-nav li {
        width:25%;
    }
 }