:root {
	--rightside: 280px;
	--response-width: 400px;
}
#main > div:nth-of-type(1) {
	width: 100%
}
@media (min-width: 900px) {
	#main {
		flex-direction: row !important;
	}
	
	#main > div:nth-of-type(2) {
		flex-grow: 0;
		flex-shrink: 0;
		flex-basis: var(--rightside);
		margin-left: 10px;
	}
}

.gPopup > div {
	max-width: 1024px;
}
.err {
	padding: 10px;
	border-radius: 5px;
	background-color: #F30;
	box-sizing: border-box;
	display: inline-block;
	color: #000;
}
ul.err li {
	list-style-position: inside;
}
.hint  {
	padding: 10px;
	border-radius: 5px;
	background-color: #0F6;
	display: inline;
	clear: both;
	color: #000;
}
.hint h1 {
	text-align: inherit;
	text-decoration: none;
	border: none;
}

.gPopup {
	z-index:9999;
}

.gPopup a {
	color: #F50;
}

.gPopup div div img {
	max-width:100%;
}

table.sort tr:first-child a {
	cursor:pointer;
}


#main:after {
	content:"";
	display:block;
	clear:both;
}
.cb {
	float:left;
	width:100%;
	clear:both;
}
br.cb {
	float:left;
	clear:both;
	font-size:1px;
	line-height:1px;
}

html, body {
	height:100%;
	overflow:visible;
}

.bg {
	top: 0;
	background-color:#e29600;
	z-index:-1;
	position:fixed;
	width:100%;
	height:100%;
}
.masterbg {
	background-color: #0096e2;
}
.bg:before {
	content: "";
	position: absolute;
	width: 300%;
	height: 300%;
	top: -100%;
	left: -100%;
	z-index: -2;
	background-position:center;
	background-image: url(/img/twirl.svg);
	background-size: cover;
	/* -webkit-animation:spin 200s linear infinite;
	-moz-animation:spin 200s linear infinite;
    animation:spin 200s linear infinite;*/
}
@-moz-keyframes spin { 100% { -moz-transform: rotate(360deg); } }
@-webkit-keyframes spin { 100% { -webkit-transform: rotate(360deg); } }
@keyframes spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } }

a {
	color:#FF9;
}
label.a {
	background-color:#F90;
	color:#000;
	padding:3px 5px 3px 5px;
	cursor:pointer;
}
input.a {
	display:none;
}
input.a ~ div {
	display:none;
}
input.a:checked + div {
	display:inline;
}
#main { /* Should be your main container */
	font-size: 16px;
	display: flex;
	flex-direction: column;
}

/* ========== HEAD DESIGN ========== */

.basic_head {
	width:100%;
	
	box-sizing: border-box;
	margin-bottom: 20px;
	height: max(33vw, 33vh, 250px);
	
	display: flex;
	justify-content: center;
	/* align-items: flex-end;
	overflow:hidden;
	min-height: 400px;*/
}
.basic_head > * {
	align-self: flex-end;
}
.bigslide {
	overflow: hidden;
	height: inherit;
	position: absolute;
	top:0px; left: 0px;
	width: 100%;
}
.bigslide > * , .bigslide > * > * {
	width: 100%;
	height: 100%;
	display: block;
	background-position: center center;
	background-size: cover;
}
.bigslide > * > * {
	position: absolute;
}
.topwrap {
	display: inline-block;
	/*height:243px;
	overflow: hidden; */
	text-align: center;
}
.topwrap > div > a {
	position: relative;
    z-index: 1;
}
.topwrap > div > a:first-child {
	opacity:0;
}
.toplogo {
	max-width:960px;
	text-align: center;
	height:190px;
}
.logo_container {
	width: 355px;
    position: relative;
    text-align: left;
	display: inline-block;
	height: inherit;
	overflow: hidden;
}
.logo_container > * {
	position:relative;
}
.tour a {
	text-decoration: none;
	color: #FFF;
}
.toplogo .brain {
	left: 127px;
	background-image: url(/img/brain_bg.png);
	width: 93px;
	top:0px;
	height: 136px;
	background-position-x: -0;
    background-position-y: -0;
	background-repeat: no-repeat;
}
.toplogo .snake {
	top: -215px;
    left: 10px;
    width: 333px;
}
.toplogo .brain_ani {
	position: relative;
	left:6px; top: 44px;
	background-image: url(/img/brain_ani.gif);
	width: 78px;
	height: 84px;
	background-position-x: -140px;
    background-position-y: -77px;
	background-repeat: no-repeat;
}
.toplogo .avt {
	top:-100px;
	left: 170px;
}
.toplogo .avt img {
	border-radius: 100%;
	box-shadow: 5px 5px 5px rgba(0,0,0,0.5);
}
.toplogo > img:last-child { /* Seitenquiz */
	top: -240px;
	left: -10px;
}
.topcity {
	min-width:80px;
	min-height:90px;
	max-width: 155px;
	display:inline-block;
	top:-165px;
	left: 5px;
	text-align:center;
	background-position:center;
	background-repeat:no-repeat;
	line-height:90px;
	text-decoration:none;
}
.topcity span {
	display: inline-block;
	line-height: 25px;
	max-width: 100px;
	font-size: 2em;
	font-weight:bolder;
	text-shadow: 0px 0px 6px #000, 0px 0px 6px #000, 0px 0px 6px #000, 0px 0px 6px #000, 3px 3px 3px #000;
    -webkit-font-smoothing: antialiased;
}
.topleft {
	position:absolute;
	left:5px; top:5px;
	max-width: 30%;
	z-index:1;
}
.topleft img {
	max-width: 100%;
}
.fbl {
	position:absolute;
	top:10px;
	right:10px;
	overflow: visible;
	text-align:right;
}
.fbl img {
	max-width:100%;
}
.fbl a iframe {
	display:block;
	height:20px;
	width:150px;
}
/* ========== BOTTOM DESIGN ========== */
.basic_bottom {
	width:100%;
	text-align:center;
	color:#FFF;
	background-color: black;
}

.basic_bottom > div {
	max-width: 960px;
	margin-left: auto;
	margin-right: auto;
}

@media (max-width: 800px) {
	.basic_bottom table td {
		text-align: center !important;
		padding: 20px;
		box-sizing: border-box;
		display: block;
	}
}

/* ========== FUNDAMENAL SETTINGS (EXPERTS ONLY) ========== */
.basic_stage {
	margin:0 auto;
	box-sizing: border-box;
	width: calc(100% - 20px);
	max-width:1024px;
	color:#000;
	padding-bottom: 20px;
}
.basic {
    display: flex;
	min-height: 100%;
    flex-direction: column;
    justify-content: space-between;
}
img {
	border:none;
}
* {
	margin:0;
	padding:0;
}

html {
	overflow-y:scroll;
}

.fr {
	float:right;
}
.fl {
	float:left;
}
b.o {
	color:#F90;
}