/* Copyright - Grant Ojanen */

/********************************** Compatibility **********************************/

header, section, footer, aside, nav, main, article, figure, video, audio {
    display: block;
}

img {
	border: none;
}

body {
    -webkit-font-smoothing: subpixel-antialiased;
}

section div p, section article {
	margin: 0px !important;
	padding-top: 8px;
	padding-bottom: 8px;
	padding-top: .5rem;
	padding-bottom: .5rem;
}

/********************************** Overall **********************************/

@font-face {
    font-family: 'KhulaWeb';
    src: url('/fonts/Khula-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'KhulaWeb';
    src: url('/fonts/Khula-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'KhulaWeb';
    src: url('/fonts/Khula-Light.woff') format('woff');
    font-weight: 200;
    font-style: normal;
}

body {
	font-family: "KhulaWeb", "Khula", sans-serif;
	background-color: black;
	background-image: url("/img/style/background.png");
	-moz-background-size: 356px;
	background-size: 356px;
	background-attachment: fixed;
	margin: auto;
	width: 74%;
	min-width: 55em;
	padding: 0.5em;
	color: #BECC94;
	word-wrap: break-word;
}

s {
	text-decoration: line-through;
}

video {
	border-width: 0em;
	max-width: 96%;
	display: inline-block;
}

div > p {
	display: inline;
}

div > h4 {
	display: inline;
}

h2 {
	font-weight: bold;
	font-size: 1.5em;
	padding: 0.2em 0em 0em .5em;
}

h3 {
	font-weight: bold;
	font-size: 1.3em;
	margin-top: 0em;
	margin-bottom: .3em;
}

img {
	max-width: 96%;
	display: inline-block;
	overflow: hidden;
	text-align: center;
	vertical-align: bottom;
}

a {
	text-decoration: none;
}

abbr {
	border: 0em;
	text-decoration: none;
}

nav > footer > p, section > footer > p {
	padding-left: 0.5em;
	margin: 0em;
}

/********************************** Header **********************************/

header {
	background: -ms-linear-gradient(#3E5746, #282B32);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#3E5746), color-stop(100%,#282B32));
	background: -webkit-linear-gradient(#3E5746, #282B32);
	background: -o-linear-gradient(#3E5746, #282B32);
	background: -moz-linear-gradient(#3E5746, #282B32);
	background: linear-gradient(#3E5746, #282B32);
	background-color: #36473f;
	border-bottom: 1px black solid;
	-moz-border-radius: 0.5em 0.5em 0em 0em;
	border-radius: 0.5em 0.5em 0em 0em;
	padding: 0.5em;
	margin-bottom: 0em;
	height: 3rem;
	text-shadow: 0px 0px 15px black;
	text-align: center;
}

h1 {
	font-weight: bold;
	font-size: 2.5rem;
	margin-top: .0em;
	color: #BECC94;
	display: inline-block;
}

#header-pt2 {
	display: inline-block;
}

h1:before {
	display: block;
	background-image: url("/img/style/logo.png");
	-webkit-background-size: 100%;
	-moz-background-size: 100%;
	background-size: 100%;
	width: 1.6875em;
	height: 1.25em;
	float: left;
	content: " ";
	margin: 0em .25em 0em 0em;
	background-repeat: no-repeat;
}

header a {
	color: inherit;
	text-decoration: none;
}

header a:hover {
	text-decoration: none;
}

/********************************** Main **********************************/

main {
	float: right;
	width: 75%;
	box-sizing: border-box;
	padding-left: .75em;
	margin-bottom: .75em;
}

main header {
	text-align: left;
}

section {
	-webkit-border-radius: .5em;
	-moz-border-radius: .5em;
	border-radius: .5em;
}

section div {
	padding-left: .5em !important;
	padding-right: .5em !important;
	font-weight: 200;
}

.list div {
	padding-left: 0em !important;
	padding-right: 0.25em !important;
}

.list-article {
	margin-left: .5em;
	margin-right: .5em;
}

section > div, .sec-content {
	background-color: #2C292F;
	padding: .001em 0.2em .001em 0em;
	color: #F0F0F0;
}

article > div {
	margin: 0.5em 0em 0.5em 0em;
}

section > header, .sec-header {
	padding: 0em;
	height: auto;
	margin: 0em;
	margin-top: -.5em;
}

section > header > h2 {
	margin-bottom: 0em;
}

article footer {
	background: none;
	margin-bottom: 2em;
	border: 0em;
}

.list article:after {
	margin-left: .5em;
	margin-right: .25em;
}

.list h3 {
	padding-left: .5em;
}

article:after {
	background-color: #3E5746;
	-webkit-border-radius: .125em;
	-moz-border-radius: .125em;
	border-radius: .125em;
	height: .25em;
	display: block;
	content: " ";
	margin-top: .5em;
}

article:last-child:after {
	display: none;
	height: 0px;
}

dt {
	font-style: italic;
	padding: 1em 0em 0em 1em;
}

dt:after {
	content: ":";
}

a {
	color: #FFAC30;
}

a:hover, a:focus {
	color: #A14816;
	text-decoration: underline;
}

.creation-icon {
	display: inline-block;
	padding: .125em;
	margin-bottom: .25em;
	margin-right: 0.4%;
	background-color: #3C393F;
	color: #BECC94;
	width: 48%;
	vertical-align: middle;
	height: 4.65em;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.creation-icon:hover, .creation-icon:focus {
	text-decoration: none;
	background-color: #4C494F;
	color: #BECC94;
}

.creation-icon h4 {
	display: inline-block;
	margin: 0em;
	white-space: nowrap;
	text-overflow: ellipsis;
	margin-bottom: -0.25rem;
	width: 100%;
	overflow: hidden;
	font-size: 1rem;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding-left: 4.7em;
	padding-left: 4.7rem;
	padding-right: .5em;
	position: relative;
	top: .75em;
}

#home-artwork h4, .more h4 {
	margin-top: 1.5rem;
	top: 0em;
}

.creation-icon p {
	font-size: .85rem;
	color: #888;
	padding-left: 4.7em;
	padding-left: 4.7rem;
	padding-right: .5em;
	position: relative;
	top: 1em;
	font-weight: normal;
}

.creation-icon:nth-child(even) {
	width: 50%;
	margin-right: 0px;
}

.creation-icon:nth-child(odd) {
	width: 49.9%;
	margin-right: -.25em;
	position: relative;
	left: .1%;
}

.creation-icon img {
	position: absolute;
	width: 4.4em;
	height: 4.4em;
}

.round {
	-webkit-border-radius: 100% !important;
	-moz-border-radius: 100% !important;
	border-radius: 100% !important;
}

.gameWrapper {
    max-width: 100%;
    overflow: hidden;
	padding: 0px !important;
	background-color: black;
}

.gameWrapper iframe {
    border: none;
    margin-left: -.0001em;/*safari fix*/
    transform-origin: 0 0;
}

.gameWrapper button {
	width: 100%;
	height: 100%;
	font-size: 1rem;
	white-space: normal;
	background-color: #3C393F;
	border: 0px;
	color: #BECC94;
	padding: 0px;
	cursor: pointer;
	-webkit-appearance: none;   /** Fix Safari IOS button design glitch **/
	-webkit-border-radius: 0px; /**/
	-moz-border-radius: 0px;    /**/
	border-radius: 0px;         /**/
}

.gameWrapper button:hover, .gameWrapper button:focus {
	background-color: #4C494F;
}

.pixal {
	image-rendering: crisp-edges;
	image-rendering: optimizeSpeed;
    image-rendering: -moz-crisp-edges;
    image-rendering: -o-crisp-edges;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: pixelated;
    image-rendering: optimize-contrast;
    -ms-interpolation-mode: nearest-neighbor;
}

.payment {
	display: inline;
}

.requirements {
	padding-left: 0px;
	margin-left: 0px;
	list-style-type: none;
	margin-top: 0px;
}

.requirement {
	background-color: #353237;
	margin-bottom: .25em;
}

.requirements div {
	padding-top: .5em;
}

.requirements div div {
	padding: 0px !important;
}

.requirements div p {
}

.requirement button {
	padding: .75em;
	margin: 0px;
	border: 0px;
	text-align: left;
	color: #F0F0F0;
	font-family: "KhulaWeb", "Khula", sans-serif;;
	font-size: .8em;
	font-weight: bold;
	margin: 0px;
	width: 100%;
	height: 2.75em;
	background-color: #3C393F;
}

.requirement button:before {
	display: block;
	-moz-background-size: 100%;
	background-size: 100%;
	width: 1.25em;
	height: 1.25em;
	float: left;
	content: " ";
	margin: 0em .5em 0em 0em;
}

.download-btn {
	background-color: #18301f;
}

.download-btn button {
	background-color: #203f29;
}

.list-dropped:before {
	background-image: url("/img/style/drop_down_dropped.png");
}

.list-not-dropped:before {
	background-image: url("/img/style/drop_down.png");
}

.big-btn {
	height: 111px;
	width: 111px;
	font-size: 1rem;
	white-space: normal;
	background-color: #3C393F;
	border: 0px;
	color: #BECC94;
	vertical-align: bottom;
	cursor: pointer;
	margin-left: .25em;
	-webkit-appearance: none;   /** Fix Safari IOS button design glitch **/
	-webkit-border-radius: 0px; /**/
	-moz-border-radius: 0px;    /**/
	border-radius: 0px;         /**/
}

.big-btn:hover, .big-btn:focus, .requirement button:active {
	background-color: #4C494F;
}

.download-btn button:active {
	background-color: #24482e;
}

.requirement button:focus {
	outline: .08em solid #808080;
	outline-offset: -.08em;
	border: 0px;
}
/**the selecters above and below must be seporate for chrome**/
.requirement button::-moz-focus-inner {
	outline: .08em solid #808080;
	outline-offset: -.08em;
	border: 0px;
}

#artwork {
	text-align: center;
}

#artwork p, #artwork h3 {
	text-align: left;
}

.inline {
	display: inline;
}

.inline:after {
	content: ": ";
}

li li {
	color: #bbb;
	font-size: .9em;
}

h3 + p, h3 + div {
	padding-top: 0px !important;
}

#artwork img, .badge {
	vertical-align: baseline;
}

/********************************** Sidebar **********************************/

nav header {
	text-align: left;
}

#sidebar, #sidebar-top {
	float: left;
	width: 25%;
}

#sidebar-top {
	top: 0px;
	margin-bottom: .75em;
}

#sidebar {
	clear: left;
}

nav {
	-webkit-border-radius: .5em;
	-moz-border-radius: .5em;
	border-radius: .5em;
}

nav header {
	padding: 0em;
	margin: 0em;
	height: 2.5em;
	margin-top: -.5em;
}

nav ul, nav ol {
	margin: 0em;
	list-style-type: none;
	padding: 0em;
	background-color: #2C292F;
}

nav li a {
	color: #F0F0F0;
	display: block;
	padding-left: .5em;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
}

nav li {
	line-height: 1.9em;
}

nav li a:hover, nav li a:focus {
	background-color: #3C393F;
	color: #F0F0F0;
	text-decoration: none;
}

/********************************** Footer **********************************/

footer {
	background: -ms-linear-gradient(#3E5746, #282B32);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#3E5746), color-stop(100%,#282B32));
	background: -webkit-linear-gradient(#3E5746, #282B32);
	background: -o-linear-gradient(#3E5746, #282B32);
	background: -moz-linear-gradient(#3E5746, #282B32);
	background: linear-gradient(#3E5746, #282B32);
	background-color: #36473f;
	border-top: 1px black solid;
	-moz-border-radius: 0em 0em .5em .5em;
	border-radius: 0em 0em .5em .5em;
	width: 100%;
	text-shadow: 0px 0px 15px black;
	min-height: 1em;
}

#footer {
	margin-bottom: 0em;
	text-align: center;
	clear: both;
	font-weight: bold;
	font-size: 1.25em;
	padding: 1em .5em 0em .5em;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#footer li, #footer ul {
	display: inline-block;
	padding: 0em;
	margin-top: 0px;
}

#footer li:before {
	content: " • ";
}

address {
	font-style: normal;
}

/********************************** Responsive Settings **********************************/

@media only screen and (max-width: 55.5em)/*, screen and (orientation: portrait)*/ {
	#sidebar-top {
		width: 100% !important;
		margin-bottom: 0em;
	}

	#sidebar {
		width: 100%;
		margin-bottom: 1em;
	}

	body {
		width: 90%;
		min-width: 20em;
	}

	main {
		width: 100%;
		margin-bottom: .75em;
		padding-left: 0px;
	}

	header {
		height: auto;
		text-align: center;
		margin-bottom: 0em;
	}

	h1 {
		font-weight: bold;
		font-size: 2em;
		line-height: 1.14em;
		padding: 0em;
		margin: 0em;
		display: inline-block;
	}

	#header-pt2 {
		display:block;
	}

	h1:before {
		width: 5.4rem;
		height: 4rem;
		margin: 0em .5em 0em 0em;
	}

	nav li {
		line-height: 2.75em;
	}

	nav li a {
		padding-left: 0em;
	}

	#main_nav li {
		width: 25%;
		text-align: center;
		display: inline-block;
		vertical-align:top;
	}
}

@media only screen and (max-width: 40em) {
	.audio-group > div {
		width: 100%;
		display: block;
	}

	.creation-icon, .creation-icon:nth-child(odd), .creation-icon:nth-child(even) {
		width: 100%;
		-webkit-box-sizing: initial;
		-moz-box-sizing: initial;
		box-sizing: initial;
		left: 0%;
	}

	.creation-icon img {
		width: 4.65em;
		height: 4.65em;
	}

	.creation-icon h4, .creation-icon p {
		padding-left: 5rem;
	}
}

@media only screen and (max-width: 25em) {
	#main_nav li {
		width: 50%;
	}
}

@media only screen and (max-width: 28em) {
	h1 {
		font-size: 1.4em;
	}

	h1:before {
		width: 4.05rem;
		height: 3rem;
	}

	.app {
		height: 72px;
	}

	h4 {
		margin: .1rem 0rem;
	}

	#footer li:first-child:before {
		content: "";
	}
}