@import url('https://fonts.googleapis.com/css?family=Varela+Round');
@import url('https://fonts.googleapis.com/css?family=Russo+One');


body {
    padding: 0;
    margin: 0;
    font-family: 'Varela Round', 'Arial';
    font-size:20px;
    -webkit-text-size-adjust: none;
    background: #111111;
}

#wrapper{
    font-family:"Varela Round";
/*    font-family:"Russo One";*/
    color:#fff;
    position: relative;
    padding-bottom: 50px;
    display: none;
}


#info{
	position:fixed;
	left:0px;
	top:60px;
	background-color:#fff;
	opacity:1;
	z-index:1000;
    display: none;
}




ul, ol, dl { /* Due to variations between browsers, it's best practices to zero padding and margin on lists. For consistency, you can either specify the amounts you want here, or on the list items (LI, DT, DD) they contain. Remember that what you do here will cascade to the .nav list unless you write a more specific selector. */
	padding: 0;
	margin: 0;
}

p{
	margin:0;
	padding:0;
}

h1, h2, h3, h4, h5, h6{
	margin-top: 0;	 /* removing the top margin gets around an issue where margins can escape from their containing block. The remaining bottom margin will hold it away from any elements that follow. */
	padding-right: 15px;
	padding-left: 15px; /* adding the padding to the sides of the elements within the blocks, instead of the block elements themselves, gets rid of any box model math. A nested block with side padding can also be used as an alternate method. */
    font-weight: inherit;
}

h1,h2{
	margin:0;
	padding:0;
    font-weight: inherit;
}

a img{
	border:0;
}

img{
	box-shadow: #000 0em 0em 0em;
}

#bg{
    background-image: url(images/bg.jpg);
    position: fixed;
    width:100%;
    height: 100vh;
    background-repeat: no-repeat;
    background-size: cover;
    z-index: 0;
}

#hp_container{
    display: table;
    width: 1200px;
    height: 100vh;
    text-align: center;
    margin: 0 auto;
    position: relative;
}

#scroll_notice{
    position: absolute;
    bottom:10px;
    width: 100%;
    text-align: center;
    left:0;
    transition: opacity 0.5s ease-out;
}
#scroll_notice img{
    width: 20px;
}
#scroll_notice.already_scrolled{
    opacity:0;
}
#hp{
    display: table-cell;
    vertical-align: middle;
    text-align: left;
    padding-bottom: 40px;
}
#logo{
    float: left;
    margin-right: 80px;
}

#mobile_hp_line1{
    display: none;
}

#logo img{
   width: 200px; 
}

#hp_text_container{
    float: left;
    padding-top: 30px;
    width: 750px;
}
#hp_line1{
    font-size:56px;
    color:#333;
    line-height: 56px;
    margin-bottom: 20px;
}
.dyn_text{
    font-family:"Russo One";
    font-size:68px;
    color:#b3b3b3;
    line-height: 65px;
}

.anim_chapter_title{
    font-size:13px; 
    line-height: 13px;
    color:#666;
    display: inline-block;
    padding: 3px;
    background-color: transparent;
    
}
.anim_chapter_title.highlighted{
    color:#999;
    background-color:#181818;
}

#bar_container{
    position: relative;
    height: 1px;
    margin-bottom: 15px;
/*    width: 600px;*/

}
#rail{
    background: #333;
    height: 1px;
    width: 100%;
    position: absolute;
    top:0;
    left:0;
    
}

#train{
    background: #666;
    height: 1px;
    width:0%;
    position: absolute;
    top:0;
    left:0;
}


#hp_line2_start{
    display: inline-block;
    padding-right: 20px;
}
#hp_line2_end{
    display: inline-block;
}

#hp_line3{
    font-size:22px;
    color:#808080;
    max-width: 530px;
    padding-top: 30px;
    height: 130px;
}

#menu_container{
    background-color:rgba(0, 0, 0, 0.95);
    position: relative;
    top:20px;
    z-index: 1;
    width: 100% !important;
/*    padding-top: 20px;*/
}

#mobile_menu{
    display: none;
}
#mobile_menu_inner{
    display: none;
}

#menu_top_bar{
    position: absolute;
    width:100%;
    height: 0px;
    top:-20px;
    background: #111111;
}

#menu_container.nobg #menu_top_bar{
    height: 20px;
}


#menu_inner{
    height: 60px;
    position: relative;
    width:1200px;
    margin: 0 auto;
}

#menu_trigger{
}

#menu_item_hamburger{
    display: none;
}

.menu_item{
    display: inline-block;
    font-family:"Russo One"; 
    line-height: 60px;
    margin-right: 20px;
    color:#999;
    font-size:20px;
    height: 60px;
    top:0;
    left:0;
    cursor: pointer;
    transition: color 0.2s ease-out;
}
.menu_item:hover, .menu_item.selected_workshop{
    color:#fff;
}
#menu_item_icon{
    position: absolute;
    width:76px;
    height: 81px;
    top:-10px;
    right:0; 
    background-image: url(images/desktop_home_btn.png);
    background-size: 76px;
    background-position: top;
    cursor: pointer;
}
#menu_item_icon:hover{
    background-position: bottom;
}
/*
#menu_item_icon img{
    display: block;
    width: 100%;
}
*/

.workshop{
    width: 1200px;
    margin: 0 auto;
    padding-top: 30px;
}

.workshop_title{
    margin-top: 70px;
    margin-bottom: 40px;
    text-shadow: 2px 2px #000000;
    font-family:"Russo One"; 
    color:#333;
    font-size:48px;
    line-height: 48px;
    
}

.job_item{
/*
    width: 1130px;
    margin: 0 auto;
*/
    padding-bottom: 40px;
    padding-top: 40px;
    border-bottom:1px solid #000;
}
.job_item_left_text{
    float: left;
    margin-bottom: 40px;
}
.job_item_right_image{
    float: right;
    width: 700px;
    text-align: right;
}
.job_item_left_image{
    float: left;
    width: 700px;  
}
.job_item_right_text{
    float: right;
    margin-bottom: 40px;
}


.job_item_right_image img{
    width: 100%;
}
.job_item_left_image img{
    width: 100%;
}

.job_item_desc{
    width:332px;
    padding-bottom: 30px;
    border-bottom: 1px dashed #333;
    font-size:18px;
    color:#808080;
    margin-bottom: 30px;
}
.job_item_desc.wide{
    width:500px;
}

.job_item_tags.wide{
    width: 500px;
}

.job_item_title{
    font-family:"Russo One"; 
    font-size:26px;
    color:#999;
    margin-bottom: 30px;
}
.job_item_title a{
    color:#999;
    text-decoration: none;
    transition: color 0.3s ease-out;
}
.job_item_title a:hover{
    color:#fff;
}

.job_item_tags{
    font-size: 0;
}

.tag{
   font-size:16px; 
    line-height: 16px;
    border-radius: 3px;
    background: #333;
    color:#999;
    display: inline-block;
    padding: 5px;
    margin-right: 5px;
    margin-bottom: 5px;
    
}

#contact_section{
    width: 1200px;
    margin: 0 auto;
    padding-top: 30px;
    font-family:"Russo One"; 
    font-size:16px;
}

input, textarea{
    -webkit-appearance: none;
    border-radius: 0;
    border-width: 1px;
    border-style: solid;
    border-color:#808080;
    background: #000;
    padding-left: 5px;
    padding-right: 5px;
    color:#fff;
    padding-bottom: 5px;
    padding-top: 5px;
}

#contact_left{
    float: left;
}
#contact_right{
    float: left;
    padding-left: 200px;
    padding-top: 30px;
}
.form_item{
    display: table;
    height: 60px;
}
.tf_container, .form_label{
    display: table-cell;
    vertical-align: middle;
}
.form_msg_ta_container{
    display: table-cell;
    vertical-align: center;
}

#message{
    height: 100px;
    font-family: 'Varela Round';
    font-size:14px;
    resize: none;
    border-radius:5px;
    letter-spacing: 1px;
    width: 250px;
}

.form_label{
    width: 90px;
    color:#999;
}
#form_msg_container .form_label{
    vertical-align: top;
    padding-top: 7px;
}

#form_msg_container{
    padding-top: 10px;
}

.tf{
    font-family: "Varela Round";
    font-size:14px;
    border-radius:5px;
    letter-spacing: 1px;
    width: 250px;
}

#contact_pre_text{
    padding-bottom: 30px;
    border-bottom: 1px dashed #333;
    font-size: 18px;
    color: #808080;
    margin-bottom: 30px;
    font-family:"Varela Round";
}

#contact_pre_text a{
    color:#666;
    text-decoration: none;
    transition: color 0.3s ease-out;
}
#contact_pre_text a:hover{
    color:#fff;
    text-decoration: none;
}

#reg_submit_div{
/*	margin-top:5px;*/
	position:relative;
    margin-top: 20px;
    text-align: right;
}
.loader_div{
	position:absolute;
	top:8px;
	right:35px;
	display:none;
}
.loader_div img{
	width:30px;
}
 #reg_submit_btn{
	 background-color:#000;
 }

.button {
	border: 0;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size:14px;
	font-family:"Russo One";
	height: 42px; 
	line-height: 40px; 
	margin: 0px; 
	padding: 0 20px; 
	text-align: center; 
	text-decoration: none; 
	vertical-align: top; 
	white-space: nowrap;
	-moz-border-radius: 5px;
	border-radius: 5px;
    border-color:#808080;
    border-width: 1px;
    border-style: solid;
 }
 
 #reg_submit_btn:hover{
	 background-color:#171616;
 }

#l_name_container{
    position: absolute;
    left:-10000px;
    top:-10000px;
}

#response_div{
    margin-top: 20px;
    font-size:14px;
    height: 40px;
}

#loading{
    width:100%;
    height: 100vh;
    display: table;
    font-family:"Russo One";
    font-size:18px;
    position: fixed;
    z-index: 2;
}
#loading_inner{
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    color:#fff;
}