* 
{
	margin: 0;
}

body 
{
	margin: 0;
	padding: 0;
	height: 100%;

	background: url('landing/images/background.jpg') no-repeat center top;
	background-size: 1390 1003;
	background-color: #020107;
	color: #dddddd;
	font-family: 'palatino linotype', 'Georgia', 'Serif';
	font-size: 12pt;

	text-shadow: -2px -2px 0px rgba(0,0,0,1);
}

p
{
	margin-bottom: 1.2em;
	z-index: 500;
}

a
{
	color: #8a8fFF;
	text-decoration: none;
}

a:hover
{
	color: #6ba9FF;
	text-decoration: none;
}

a:visited
{
	color: #8a8fFF;
	text-decoration: none;
}

a:active
{
	color: #ffff00;
}

h1
{
	font-family: 'palatino linotype', 'Georgia', 'Serif';
	font-size: 24px;
	margin: 2 0 10 0;
	text-align:center;

	text-shadow: 1px 1px #000000;
}

.wrapper 
{
	min-height: 100%;
	height: auto !important;
	height: 100%;
	margin: 0 auto -4em;
}

.footer, .push 
{
	height: 4em;
}

.followme {
    position: fixed;
    height: 30px;
    width: 30px;
    background-color: #FF0000;
    top: 48%;
    left: 0;
}

.featureHeading
{
	color: #dddddd;
	font-family: 'palatino linotype', 'Georgia', 'Serif';
	font-size: 16pt;
	font-weight: bold;
	text-align: center;
	width: 100%;
}

#bodyContainer
{
	position:relative;
	width: 100%;
	margin: 0;
	padding: 0;
}

#centerContainer
{
	position: absolute;
	width: min(max(640px, 100%), 75vw);
	max-width: 1200px;
	left: 50%;
	transform: translateX(-50%);
	padding: 0;
}

#headerSection
{
	float:left;
	position:fixed;
	/*position: relative;
	width: 800px;
	height: 110px;
	margin-left: auto;
	margin-right: auto;
	left: -60;*/
	/*background-color: rgba(255,0,0,0.5);*/
	z-index: 1009;
}

#kickstarterTop
{
	width: 641px;
	height: 122px;

	margin-top: -20px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0px;

	z-index: 1;
}

#kickstarterBottom
{
	width: 644px;
	height: 122px;

	margin-top: -31px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0;

	z-index: 1;
}

#navdiv
{
	position: fixed;
	left: 0;
	top: 0;
	margin: 0 0 0 0;
	z-index: 2000;
	
	background: url('landing/images/top_bar.jpg');
	background-color: black;
	width: 100%;
	height: 28px;
	text-align: center;
	padding-top: 4px;
}

#navdiv a
{
	color: white;
	text-decoration: none;
}
#navdiv a:hover
{
	color:#5f74ff;
	font-weight: bold;
}
#navdiv a:visited
{
	color:white;
}

#videoSection
{
	/*background-color: rgba(0,255,0,0.5);*/
	background-image: url("landing/images/video_background.png");
	width: calc(100% - 40px);
	max-width: 620px;
	height: auto;
	aspect-ratio: 620 / 348;
	margin-top: calc(min(640px, 85vw) * 0.35 + 10px);
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0px;
	padding: 20px;
	z-index: 0;
}

#video
{
	position: relative;
	z-index: 1;

	width: 100%;
	height: auto;
	aspect-ratio: 600 / 338;
}


#screenshotsSection
{
	position: relative;
	margin: 0;
	padding: 0;
	width: 100%;
	/*background-color: rgba(0,0,255,0.5);*/
	text-align: center;
}

#footerSection
{
    position: relative;
    width: 100%;
    max-width: 600px;
    height: 110px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

#logodiv
{
	position: absolute;
	width: min(640px, min(75vw, 1200px));
	left: 50%;
	transform: translateX(-50%);
	padding: 0;
	top: 10px;
	z-index: 1000;
}
#logodiv img
{
	width: 100%;
	height: auto;
}

#wasatchdiv
{
	position: fixed;
	right: 50%;
	margin-right: -50%;
}

#wasatchimg
{
	position: absolute;
	right: 0;
}

#leftimagediv
{
	position: fixed;
	
	height: 100%;

	left: 50%;
	margin-left: -280px;
	bottom: -70px;
	z-index: 1000;
}

#leftimage
{
	position: absolute;
	right: 0;
	height: 100%;
	z-index: 1001;
}

#rightimagediv
{
	position: fixed;
	
	height: 70%;

	bottom: 0;
	right: 50%;
	margin-right: -320px;
	z-index: 1000;
}

#rightimage
{
	position: absolute;
	left:0;
	height: 100%;
	z-index: 999;
}

#facebookShare
{
	/* float:left; */
	margin-top: 28px;
	z-index: 1011;
}

#socialButtons
{
	/* float:right; */
	/* margin-top: 30px; */
	z-index: 1010;
}

#shutdownSection
{
    width: calc(100% - 40px);
    max-width: 620px;
    margin-top: 260px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
    padding: 20px;
    z-index: 0;
    
    text-align:justify;
    background-color: rgba(0, 0, 0, 0.75);
}

#featureSection
{
    position: relative;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin-top: 20px;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 40px;
    padding: 0;
    color: #dddddd;
    font-family: 'palatino linotype', 'Georgia', 'Serif';
    font-size: 10pt;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

@media (max-width: 680px) {
    #featureSection {
        flex-direction: column;
        gap: 0;
    }
}

#featureColumn1
{
    flex: 1;
    min-width: 0;
    padding: 10px;
    text-align:justify;
    background-color: rgba(0, 0, 0, 0.65);
}
#featureColumn2
{
    flex: 1;
    min-width: 0;
    padding: 10px;
    text-align:justify;
    background-color: rgba(0, 0, 0, 0.65);
}
#featureColumn3
{
    flex: 1;
    min-width: 0;
    padding: 10px;
    text-align:justify;
    background-color: rgba(0, 0, 0, 0.65);
}

@media (max-width: 680px) {
    #featureColumn1,
    #featureColumn2,
    #featureColumn3 {
        width: 100%;
    }
}

#copyright
{
	width: 100%;
	margin-top: 40px;
	text-align: center;
}

.textboxBG
{
	position: relative;
	border: 120px solid;
	border-image: url("landing/images/textbox.png") 120 120 fill round;
	-webkit-border-image:url("landing/images/textbox.png") 120 120 round; /* Safari 5 and older */
	-o-border-image:url("landing/images/textbox.png") 120 120 round; /* Opera */
	
	margin-top: 0px;
	margin-bottom: -40px;
	width: 420px;
	z-index: -5;
}
.textboxContent
{
	position: relative;
	margin: -64px 50px -84px -65px;
	width: 550px;
	text-align: justify;
	z-index: 500;
}

.render
{
	position:relative;
	left:-36px;
	top:-10px;
}

.cardRow
{
	display: none;
}

.cardSide
{
	position: fixed;
	
	left: 50%;
	top: 34px;
	margin-left: -500px;
	z-index: 1000;
}

.cardImage
{
	margin: 2 10 2 10;
}

/* Mobile phone detection */
@media only screen and (orientation: portrait) {
    body {
        font-size: 14pt;
        overflow-x: hidden;
    }
    
    #bodyContainer {
        overflow-x: hidden;
    }
    
    #centerContainer {
        position: relative !important;
        width: 100% !important;
        max-width: 100% !important;
        left: 0 !important;
        transform: none !important;
        padding: 0 !important;
        margin: 0 auto !important;
    }
    
    #featureSection {
        flex-direction: column;
        gap: 0;
        font-size: 12pt;
        box-sizing: border-box;
    }
    
    #featureColumn1,
    #featureColumn2,
    #featureColumn3 {
        width: 100%;
        box-sizing: border-box;
    }
    
    #screenshotsSection {
        display: flex;
        flex-wrap: wrap;
        gap: 5px;
        justify-content: center;
        box-sizing: border-box;
    }
    
    #screenshotsSection a {
        flex: 0 0 calc(33.333% - 4px);
        max-width: calc(33.333% - 4px);
    }
    
    #screenshotsSection img {
        width: 100%;
        height: auto;
        display: block;
    }
    
    #videoSection {
        width: calc(100% - 20px);
        max-width: 100%;
        padding: 10px;
        margin-left: auto;
        margin-right: auto;
        box-sizing: border-box;
        background-size: cover;
    }
    
    #video {
        width: 100%;
    }
    
    #shutdownSection {
        width: calc(100% - 20px);
        padding: 10px;
        margin-left: auto;
        margin-right: auto;
        box-sizing: border-box;
    }
}