/************************************/
/* Mobile / small display portrait  */
/************************************/
/* Body element as base html region */
/************************************/
body {
	margin: 0;
	padding: 0;
	background: #0d0f11;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #0d0f11;
}
/****************************/
/* General link defenitions */
/****************************/
a {
        color:#148FFB;
}
/* Behaviour of a normal, unvisited link */
a:link {
    	text-decoration: none;
    	border: none;
}
/* Behaviour of a visited link */
a:visited {
    	text-decoration: none;
    	border: none;
}
/* Link behaviour when hovered with the mouse icon */
a:hover {
    	text-decoration: none;
	border: none;
}
/* Link behaviour the moment it is clicked */
a:active {
    	text-decoration: none;
	border: none;
}
/******************************/
/* General header definitions */
/******************************/
/* Header 1-3 */
h1, h2, h3
{
	margin: 0;
	padding: 0;
}
/*******************************/
/* General element definitions */
/*******************************/
/* Definition for paragraphs */	
p
{
	text-align: justify ;
}
/* Definition for lists */	
ol, ul
{
	padding: 0;
	list-style: none;
	margin-top: 0;
	text-align: justify ;
}
/****************************************/
/* Html/ Css checkbox trick             */
/*                                      */
/* Why not display: none? Because that  */
/* would cause it to be ignored by      */
/* screen readers and keyboard tabbing. */
/* This method keeps <input> in         */
/* the flow, but hides it offscreen.    */
/*                                      */
/* In css a + b means selects all b     */
/* elements that are placed immediately */
/* after a elements. ~ is same as + but */
/* looks for all following elements     */
/****************************************/
input.expandcollapse {
        position: absolute;
        left: -9999px;
}
/* Expandable container is hidden by default now with display: none */
.expandablecontainer {
        /*display:none;*/
        display: flex;
        max-height:0;
        -webkit-transition: max-height 0.2s ease-out, padding 0.2s ease-out;
        transition: max-height 0.2s ease-out, padding 0.2s ease-out;
}
#logintoggle:checked ~ #logincontainer {
        display: flex;
        max-height:200px;
}
#logintoggle:checked ~ #login label {
        background-image: url(https://www.nexusgamesoft.com/images/fc_w_CaretDown.png);
}
#searchtoggle:checked ~ #searchcontainer {
        display: flex;
        max-height:200px;
}
#searchtoggle:checked ~ #search label {
        background-image: url(https://www.nexusgamesoft.com/images/fc_w_CaretDown.png);
}
#categorytoggle:checked ~ #categorycontainer {
        display: flex;
        padding: 1em 0;
        max-height:1000px;
}
#categorytoggle:checked ~ #category label {
        background-image: url(https://www.nexusgamesoft.com/images/fc_w_CaretDown.png);
}
.folder input:checked ~ div {
        display: flex;
        max-height:1000px;
        padding: 0 0 0 2em;
}
.folder input:checked ~ label {
        background-image: url(https://www.nexusgamesoft.com/images/StandartIcon_2.png);
}

/******************/
/* Inline popup   */
/******************/
/* Popup box BEGIN */
.hover_bkgr{
    background:rgba(0.5,0,0,.4);
    cursor:pointer;
    display:none;
    height:100%;
    position:fixed;
    text-align:center;
    top:0;
    width:100%;
    z-index:10000;
}
.hover_bkgr .helper{
    display:inline-block;
    height:100%;
    vertical-align:middle;
}
/* > selects all divs with .hover_bkgr as parent */
.popupBox {
    display: inline-block;
    height: 70%;
    max-width: 551px;
    vertical-align: middle;
    max-height: 500px;
    border-radius: 8px;
    position: relative;
    padding: 2em 4%;
    background-color: #fff;
    box-shadow: 10px 10px 60px #555;
    text-align: justify;
    width: 75%;
}
.popupContent {
    display: inline-block;
    position: static;
    overflow:scroll;
    overflow-y:scroll;
    overflow-x:hidden;
    height:100%;
}
.popupCloseButton {
    background-color: #fff;
    border: 0px;
    color: #148FFB;
    border-radius: 50px;
    cursor: pointer;
    display: inline-block;
    font-family: arial;
    font-weight: bold;
    position: absolute;
    top: -20px;
    right: -20px;
    font-size: 25px;
    line-height: 30px;
    width: 30px;
    height: 30px;
    text-align: center;
    //overflow: visible;
}
.popupCloseButton:hover {
    //background-color: #148FFB;
    //color: #fff;
    border: 1px solid #fff;
    top: -21px;
    right: -21px;
    font-size: 26px;
}
.trigger_popup_about {
    cursor: pointer;
    //font-size: 20px;
    //margin: 20px;
    //display: inline-block;
    //font-weight: bold;
}
/* Popup box BEGIN */

/******************/
/* Top bar        */
/******************/
/* Top bar base region */
#topbar {
        display: flex;
        flex-direction: column;
        overflow:hidden;
	margin: 0 auto;
	padding: 0;
        color: white;
        font-weight: 500;
        letter-spacing: 0.05em;
	font-family: Arial, Helvetica, sans-serif;
}
/************/
/* Logo     */
/************/
/* Logo base region */
#logo {
        background-image: url(https://www.nexusgamesoft.com/images/Logo_small.png);
        background-repeat: no-repeat;
        background-size: 300px 73px;
        background-position:center;
	height: 100px;
	margin: 0;
	padding: 0 0 5px 0;
	background-color: #148FFB;
}
/* Logo a region */
#logo a {
        display: flex;
        justify-content: center;
        overflow:hidden;
	margin: 0 auto;
	padding: 0;
        width:100%;
	height: 100px;
        max-width:300px;
        cursor: default;
}
/************/
/* Login    */
/************/
/* Login base region */
#login {
        display: flex;
        justify-content: center;
        flex-direction: column;
        align-items: stretch;
	margin: 0;
	padding: 0px;
        background-color: #171f26;
}
/* Login paragraph */
#login label {
        display: flex;
        justify-content: center;
        flex-direction: column;
        align-items: center;
        font-size: 2em;
	margin: 0 auto;
	padding: 0 0em;
	height: 2em;
        line-height:2em;
        background-image: url(https://www.nexusgamesoft.com/images/fc_w_CaretRight.png);
        background-repeat: no-repeat;
        background-size: 1em;
        background-position:1em center;
        width:100%;
        max-width:800px;
}
/*********************/
/* Login container   */
/*********************/
/* Login container base region */
#logincontainer {
        display: flex;
        justify-content: center;
        overflow:hidden;
	margin: 0 auto;
	padding: 0;
        background: #0d0f11;
        width:100%;
        max-width:800px;
}
#logincontainer form {
        display: flex;
        justify-content: center;
        flex-direction: column;
        align-items: stretch;
        width: 100%;
	margin: 0;
	padding: 0;
}
#loginemail{
        display: flex;
        justify-content: center;
        align-items: stretch;
        line-height:2em;
        padding: 0 2em 0 0;
        margin: 2em 0 0 0;
}
#loginemail label{
        display: flex;
        justify-content: center;
        flex-grow: 1;
        padding: 0 2em 0 0;
}
#loginemail input{
        display: flex;
        flex-grow: 8;
}
#loginpassword{
        display: flex;
        justify-content: center;
        align-items: stretch;
        line-height:2em;
        padding: 1em 2em 0 0;
}
#loginpassword label{
        display: flex;
        justify-content: center;
        flex-grow: 1;
}
#loginpassword input{
        display: flex;
        flex-grow: 8;
}
#rememberme{
        display: flex;
        justify-content: center;
        align-items: stretch;
        line-height:2em;
        margin: 1em 0 0 0;
}
#rememberme input{
        display: flex;
        justify-content: center;
        margin-right: 1em;
}
#loginbutton {
        display: flex;
        justify-content: center;
        align-items: center;
        width:5.3em;
        height: 2.5em;
        margin: 1em auto 0 auto;
        padding:0;
        line-height:2em;
        background-image:url(https://www.nexusgamesoft.com/images/CornerPanelRadius_50px_Stroke_10px.png);
        background-color:#0d0f11;
        background-repeat: no-repeat;
        background-size: 100% 100%;
        background-position:0 center;
        border: none;
        text-decoration: none;
        color: white;
}
#registerforgotpassword {
        display: flex;
        justify-content: center;
        align-items: center; 
        margin: 2em 0;
}
#registerforgotpassword span{
        margin: 0 2em;
}
/************/
/* Search   */
/************/
/* Login base region */
#search {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        justify-content: center;
	margin: 0;
	padding: 0px;
        background-color: #171f26;
}
/* Login paragraph */
#search label {
        display: flex;
        justify-content: center;
        flex-direction: column;
        align-items: center;
        font-size: 2em;
	margin: 0 auto;
	padding: 0 0em;
	height: 2em;
        line-height:2em;
        background-image: url(https://www.nexusgamesoft.com/images/fc_w_CaretRight.png);
        background-repeat: no-repeat;
        background-size: 1em;
        background-position:1em center;
        width:100%;
        max-width:800px;
}
/**********************/
/* Search container   */
/**********************/
/* Search container base region */
#searchcontainer {
        display: flex;
        justify-content: center;
        overflow:hidden;
	margin: 0 auto;
	padding: 0;
        background: #0d0f11;
        width:100%;
        max-width:800px;
}
#searchcontainer form {
        display: flex;
        justify-content: center;
        align-items: stretch;
        width: 100%;
	margin: 0 0 0 2em;
	padding: 1em 0;      
}
#searchcontainer form input{
        display: flex; 
        justify-content: center;
        align-items: stretch;
	padding: 0 0 0 0.5em;
        margin: 0;
}
#searchcontainer form input:invalid {
        box-shadow: none;
}
#searchinput {
        flex-grow: 8;
        margin: 1em 0 1em 1em;
}
#submitsearch {
        display: flex;
        flex-grow: 1;
        justify-content: center;
        align-items: center;
        background-image:url(https://www.nexusgamesoft.com/images/NaviIcon_27.png);
        background-color:#0d0f11;
        background-repeat: no-repeat;
        background-size: 1em 1em;
        background-position:center;
        margin: 1em;
        border: none;
        text-decoration: none;
        color: white;
}
/**************/
/* Category   */
/**************/
/* Category base region */
#category {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        justify-content: center;
	margin: 0;
	padding: 0;
        background-color: #171f26;
}
/* Category paragraph */
#category label {
        display: flex;
        justify-content: center;
        flex-direction: column;
        align-items: center;
        font-size: 2em;
	margin: 0 auto;
	padding: 0 0em;
	height: 2em;
        line-height:2em;
        background-image: url(https://www.nexusgamesoft.com/images/fc_w_CaretRight.png);
        background-repeat: no-repeat;
        background-size: 1em;
        background-position:1em center;
        width:100%;
        max-width:800px;
}
/************************/
/* Category container   */
/************************/
/* Category container base region */
#categorycontainer {
        display: flex;
        justify-content: left;
        overflow:hidden;
	margin: 0 auto;
	padding: 0;
        background: #0d0f11;
        width:100%;
        max-width:800px;
}
/**************/
/* Folder     */
/**************/
.folder {
        display: flex;
        flex-direction: column;
        overflow:hidden;
	margin: 0 0 0 1em;
	padding: 0;   
}
.folder label {
        font-size: 1.5em;
        line-height:2em;
        font-weight: 500;
        letter-spacing: 0.05em;
        padding: 0 0 0 2em;
        background-image: url(https://www.nexusgamesoft.com/images/StandartIcon_3.png);
        background-repeat: no-repeat;
        background-size: 1em;
        background-position:0.5em center;
}
/**********************/
/* Folder container   */
/**********************/
.folder div {
        display: flex;
        flex-direction: column;
        overflow:hidden;
	margin: 0;
	padding: 0;
}
.folder div a {
	margin: 0 0 0 0.75em;
	padding: 0;
        font-size: 1.5em;
        line-height:1.5em;
        font-weight: 500;
        letter-spacing: 0.05em;
}
/********************************/
/* The wrapper defines a region */
/* in the center of the page    */
/********************************/
#wrapper {
	margin: 0 auto;
	padding: 0;
        max-width: 800px;
}
/*************************************/
/* The featured div defines a region */
/* where feartured products          */
/* are displayed                     */
/*************************************/
#featured {
	margin: 0;
	padding: 0;
        background-color: #FFFFFF;
        background-position: center;
        background-repeat: no-repeat;
        background-size:12em;
        background-image: url(https://www.nexusgamesoft.com/images/loading.gif);
	min-height: 20em;
	overflow-x: hidden;
}
/*************************************/
/* The featured image                */
/*************************************/
#featuredimage {
	margin: 0;
	padding: 0;
        background-position: right top;
        background-repeat: no-repeat;
        background-size:cover;
}
#featuredimage img {
margin: 0;
padding: 0;
        display: block;
        width: 100%;
        height: 100%;
        border: 0;
}
/*************************************/
/* The featured description div      */
/*************************************/
#featureddescription {
        margin:0;
        padding:1em;
        color:white;
        background-color:#0d0f11;
}
#featureddescription p {
        margin:1em 0 0 0;
        padding:0;
}
#featureddescription a.featuredpublisher {
        margin:1em 0 0 0;
        padding:0;
        color:#148FFB;
        font-size: 1.1em;
        line-height:1.1em;
        letter-spacing: 0.05em;
}
#featureddescription h1 {
        padding 0 2em 0 0;
        margin:0 0 0.75em 0;
        background-position: right center;
        background-repeat: no-repeat;
        background-size:contain;
        font-size: 1.5em;
        line-height:1.5em;
        font-weight: 600;
        letter-spacing: 0.02em;
}
#featuredrating {
        display: flex;
        justify-content: flex-start;
        margin:0;
        padding:0;
}
.star_full {
        margin:1.25em 0.75em 1.25em 0;
        padding:0;
        width:1.5em;
        height:1.5em;
        background-position: center;
        background-repeat: no-repeat;
        background-size:contain;
        background-image: url(https://www.nexusgamesoft.com/images/star_full.png);
}
.star_empty {
        margin:1.25em 0.75em 1.25em 0;
        padding:0;
        width:1.5em;
        height:1.5em;
        background-position: center;
        background-repeat: no-repeat;
        background-size:contain;
        background-image: url(https://www.nexusgamesoft.com/images/star_empty.png);
}
#featuredbuy {
        display: flex;
        justify-content: center;
        align-items: center;
        margin:0 0 0 auto;
        padding:0;
}
#featuredbuy a {
        display: flex;
        justify-content: center;
        align-items: center;
        margin:0;
        padding:0;
        width:15.3em;
        height: 2.5em;
        margin: 0 auto 0 auto;
        padding:0;
        font-weight: 600;
        font-size: 1em;
        letter-spacing: 0.02em;
        line-height:2em;
        background-image:url(https://www.nexusgamesoft.com/images/CornerPanelRadius_550px_Stroke_110px.png);
        background-repeat: no-repeat;
        background-size: 100% 100%;
        background-position:0 center;
        border: none;
        text-decoration: none;
        color: white;
}
#featureddescriptiontext {
        margin:1em 0 0 0;
        padding:0;
        text-align:justify;
}
/********************/
/* Products preview */
/********************/
#products {
	margin: 0;
	padding: 0;
        background-color: #FFFFFF;
        background-position: center;
        background-repeat: no-repeat;
        background-size:12em;
        background-image: url(https://www.nexusgamesoft.com/images/loading.gif);
	min-height: 20em;
	overflow-x: hidden;
}
#products .navigation {
        display: flex;
        justify-content: center;
        align-items: center;
        margin:0;
        padding:0;
}
#products .navigation a {
        margin:0 0.5em;
        padding:0;
}
.productpreview {
        background-color: #FFFFFF;
        display: flex;
        justify-content: flex-start;
        align-items: stretch;
        margin:0;
        padding:1em 2em;
}
.productpreviewimagecontainer {
        display: flex;
        justify-content: center;
        flex-grow:4;
        flex-shrink: 4;
        max-width:12em;
        margin:0;
        padding:0;
}
.productpreviewlink {
        margin:0;
        padding:0;
        width: 6em;
        height: 6em;
        overflow:hidden;
}
.productpreviewlink img {
        margin:0;
        padding:0;
        width: auto;
        height: 6em;
}
.productpreviewdescription {
        display: flex;
        flex-direction:column;
        justify-content: center;
        align-items: stretch;
	width:60%;
        flex-grow:8;
        margin:0;
        padding:0 0 0 2em;
}
.productpreviewdescription .header {
        display: flex;
        margin:0;
        padding:0;
        font-weight: 800;
        font-size: 1.5em;
        letter-spacing: 0.02em;
        line-height:1em;
        color:#0d0f11;
}
.productpreviewdescription .category {
        display: flex;
        margin:0.25em 0;
        padding:0;
}
.productpreviewdescription .rating {
        display: flex;
        justify-content: flex-start;
        margin:0;
        padding:0;
}
.productpreviewdescription .rating .star_full {
        margin:0.25em 0.5em 0 0;
        padding:0;
        width:1.5em;
        height:1.5em;
        background-position: center;
        background-repeat: no-repeat;
        background-size:contain;
        background-image: url(https://www.nexusgamesoft.com/images/star_full_blue.png);
}
.productpreviewdescription .rating .star_empty {
        margin:0.25em 0.5em 0 0;
        padding:0;
        width:1.5em;
        height:1.5em;
        background-position: center;
        background-repeat: no-repeat;
        background-size:contain;
        background-image: url(https://www.nexusgamesoft.com/images/star_empty_blue.png);
}
/***********/
/* Links   */
/***********/
#links {
        display:flex;
        flex-direction:column;
        justify-content: center;
        align-items: stretch;
        background-color: #171f26;
        margin:0;
        padding:0;
}
#links #homepage {
        display:flex;
        flex-direction:column;
        justify-content: center;
        align-items: stretch;
        margin:2em 0;
        padding:0;
}
#links #homepage a {
        display:flex;
        justify-content: center;
        align-items: center;
        font-size: 1em;
        letter-spacing: 0.015em;
        line-height:2em;       
}
#socialmedia {
        display:flex;
        justify-content: center;
        align-items: center;
        padding:4em 0 3.75em 0;
        margin:0;
        background-color:#148FFB;
}
#socialmedia a img {
        width:2em;
        height:2em;
        padding:0;
        margin:0 2em;
}
/***********/
/* Footer  */
/***********/
/* Footer base region */
#footer {
	height: 10em;
	margin: 0 auto 0 auto;
	padding: 0;
	background: #148FFB;
	font-family: Arial, Helvetica, sans-serif;
}
/* Footer paragraph settings */
#footer p {
	margin: 0;
	padding:0;
	line-height: normal;
	font-size: 10px;
	text-transform: uppercase;
	text-align: center;
	color: #FFFFFF;
}
/* Footer link settings */
#footer a {
	color: #FFFFFF;
}
