*, ::after, ::before
{
	/* removed default styling */
	padding: 0;
	margin: 0;
	text-decoration: none;
	border: 0;
	background: none;
	font-family: minecraft, minecraft-alt;
	box-sizing: border-box;
	color: white;
	font-size: 100%;
}

*:focus
{
	/* removed default styling */
	outline: none;
}

.desktop-only
{
	display: initial;
}


.mobile-only
{
	display: none;
}

h1,th
{
	font-weight: normal;
	font-family: minecraft-bold;
}

body
{
	overflow-x: hidden;
	background: linear-gradient(180deg, var(--waterBlue) 25%, var(--waterBlueDark) 100%)
}

s 
{
	text-decoration: line-through;
}

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

nav
{
	width: 100vw;
	height: var(--navBarHeight);
	background: linear-gradient(180deg, var(--skyDarkBlueTop) 0%, var(--skyDarkBlueBot) 75%);
	padding: 10px 25px;
	box-shadow: var(--perspectiveBoxShadow);
	border-bottom: 2px solid black;
	position: fixed;
	top: 0;
	z-index: 10;
}

#nav-content
{
	max-width: 1500px;
	height: 100%;
	display: block;
	margin: 0 auto;
	z-index: 11;
}

nav .left
{
	display: flex;
	height: 100%;
	float: left;
}

nav .right
{
	display: inline-block;
	height: 100%;
	float: right;
}

#nav-logo img
{
	height: 100%;
	box-sizing: border-box;
}

#nav-logo
{
	padding: 0 20px 0px 0px;
	display: inline-block;
	height: 100%;
}

#nav-logo:hover
{
	background: none;
	border: none;
}

#nav-links
{
	display: flex;
	height: 100%;
	position: relative;
	align-items: center;
}

#nav-links a,
#nav-links .dropdown 
{
    padding: 16px 25px;
    font-size: 1.25em;
    text-transform: uppercase;
    text-shadow: var(--mcTextShadow);
}

#nav-links .dropdown {
    position: relative;
    display: inline-block;
}

#nav-links .dropdown:hover {
    background: rgba(0, 0, 0, 0.15);
    border-bottom: none;
	height: 73px;
    margin-top: 13px;
}

#nav-links a:hover 
{
    background: rgba(0, 0, 0, 0.15);
    border-bottom: solid 5px rgba(0, 0, 0, 0.15);
}

#nav-links .dropdown:hover a:hover 
{
    background: rgba(0, 0, 0, 0.15);
    border-bottom: none;
}

.dropdown 
{
    position: relative;
}

.dropdown-content 
{
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: rgba(0, 0, 0, 0.6);
    border-bottom: solid 5px rgba(0, 0, 0, 0.15);
    min-width: fit-content;
    text-wrap: nowrap;
    z-index: -1;
}

.dropdown-content a 
{
    display: block;
    padding: 10px 15px;
    font-size: 1em !important;
    text-transform: none;
    text-shadow: none;
    text-decoration: none;
}

.dropdown:hover .dropdown-content 
{
    display: block;
}


.nav-bar-offset
{
	margin-top: var(--navBarHeight) !important;
}

#join-now-button
{
	background: linear-gradient(180deg, var(--logoLimeGreen) 0%, var(--logoLimeGreen2) 100%);
	height: 100%;
	padding: 0 30px;
	color: var(--logoDarkGreen);
	font-weight: bold;
	font-size: 1.75em;
	border: 2px solid var(--logoDarkGreen);
	box-shadow: var(--centeredBoxShadow);
	font-family: minecraft-bold;
}

#join-now-button:hover
{
	cursor: pointer;
	background: var(--logoDarkGreen);
	color: var(--logoLimeGreen);
	border: 2px solid var(--logoLimeGreen);
}

header
{
	height: 880px;
	width: 100vw;
	background-image: url('../images/homepage/banner.webp');
	background-position: center;
	background-size: auto 100%;
	background-repeat: repeat-x;
	position: relative;
}

#trailer
{
	display: block;
	position: absolute;
	top: 333.5px;
	left: 50%;
	transform: translateX(-50%) scale(0.725);
	height: 250px;
	width: 500px;
}

#header-world
{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 0;
}


#page-content
{
	width: 95vw;
	margin: 0 auto;
	max-width: 1500px;
	min-height: calc(100vh - var(--navBarHeight) * 3);
}

.content-row
{
	display: flex;
	justify-content: center;
	position: relative;
}

#showcase-features
{
	display: flex;
	justify-content: center;
	position: relative;
	top: -120px;
	margin: 0 auto calc(-120px + var(--verticalSpacing));
}

#showcase-features .card
{
	margin: 0 var(--horizontalSpacing);
	display: flex;
	flex-direction: column;
	align-items: stretch;
	align-self: start;
	min-width: 150px;
	padding: 0px;
	flex-basis: 100%;
}

.card img
{
	width: 100%;
	border: 2px solid black;
	box-shadow: var(--centeredBoxShadow);
	margin: 0 0 6px 0;
}

.card h1
{
	font-size: 1.25em;
	margin: 6px 0;
}

.card .info
{
	text-shadow: var(--mcTextShadow);
}

footer
{
	background-image: url('../images/backgrounds/footer_bg.png');
	background-size: 64px;
	width: 100vw;
	text-align: center;
	padding: var(--verticalSpacing) var(--horizontalSpacing);
	box-shadow: var(--centeredBoxShadow);
	border-top: 2px solid black;
	margin-top: var(--verticalSpacing);
}

footer a:hover
{
	border-bottom: 2px dotted white;
}

#fullscreen-iframe
{
	margin-top: var(--navBarHeight);
	width: 100vw;
	height: calc(100vh - var(--navBarHeight));
	margin-bottom: -5px;
}

.info-graphic-banner
{
	width: 100%;
	display: flex;
	justify-content: center;
	background: rgba(255, 255, 255, 0.7);
	margin: 0 0 var(--verticalSpacing);
	border: 2px solid black;
}

.info-graphic-banner .info
{
	flex-basis: 45%;
	min-height: 300px;
	padding: var(--horizontalSpacing);
}

.info-graphic-banner .info a
{
	color: rgb(64, 64, 64);
	border-bottom: 2px dotted rgba(64, 64, 64,0.5);
}

.info-graphic-banner .info a:hover
{
	color: white;
	border-bottom: 2px dotted white;
}

.info-graphic-banner .graphic
{
	flex-basis: 55%;
	background-image: url('../images/homepage/ModernBetaSS1.jpg');
	background-size: cover;
	border-right: 2px solid black;
	background-position: center bottom;
}

.info-graphic-banner h1
{
	color:black;
	font-size: 1.5em;
	margin: 0 0 8px;
}

.info-graphic-banner p
{
	color:black;
	font-size: 1.2em;
}

.button-card
{
	margin: 0 var(--horizontalSpacing);
	flex-basis: 100%;
	height: 360px;
	background: gray;
	background-size: cover;
	background-position: center;
	display: flex;
	border: 2px solid black;
}

.button-card:hover
{
	transform: scale(1.02);
	border: 2px solid white;
}

.button-card .info
{
	align-self: flex-end;
	text-shadow: var(--mcTextShadow);
	display: block;
	padding: var(--horizontalSpacing);
	background: linear-gradient(transparent, rgba(0, 0, 0, 0.65));
	width: 100%;
}

#showcase-features > .card:last-child,
.content-row > .button-card:last-child,
.content-row-2 > .button-card:last-child {
    margin-right: 0;
}

#showcase-features > .card:first-child,
.content-row > .button-card:first-child,
.content-row-2 > .button-card:first-child {
    margin-left: 0;
}

#dynmap
{
	background-image: url('../images/homepage/isometric.jpg');
}

#discord
{
	background-image: url('../images/homepage/discord_banner.jpg');
}


.more-info-button
{
	display: inline-block;
	color:black !important;
	padding: var(--horizontalSpacing);
	font-size: 1.2em;
	background: white;
	border: 2px solid black !important;
	float: right;
	margin: var(--horizontalSpacing) 0 0 0;
}

.more-info-button:hover
{
	border: 2px solid white !important;
	background: black;
	color: white !important;
}

.content-row-2
{
	display: flex;
	justify-content: center;
	position: relative;
}

#socials-grid
{
	width: 100%;
	padding: 20px 0;
	margin: 0 auto;
}

#socials-grid .social
{
	display: flex;
	align-items: center;
	padding: var(--horizontalSpacing);
	border-bottom: 2px dashed white;
}

#socials-grid .social:hover
{
	background-color: rgba(0, 0, 0, 0.4);
}

#socials-grid .social:hover img
{
	transform: scale(1.1);
}

#socials-grid .social img
{
	width: 60px;
	height: 60px;
	margin-right: var(--horizontalSpacing);
}

#socials-grid .social .content
{
	text-shadow: var(--mcTextShadow);
}

#socials-grid *:last-child *:last-child
{
	border-bottom: 0px ;
}

#socials-grid .social h1
{
	font-size: 1.25em;
}

#socials-grid .social p
{
	font-size: 1.2em;
}

.table-info
{
	width: 100%;
	height: 100%;
	text-shadow: var(--mcTextShadow);
	padding: 25px 0 0 0 ;
}

.table-info ol
{
	list-style-type: upper-roman !important;
	list-style: upper-roman inside;
	border: 2px solid black;
	padding: 10px;
	height: 100%;
}

.table-info ul
{
	list-style: square inside;
	border: 2px solid black;
	padding: 10px;
	height: 100%;
}

li ul
{
	border: none !important;
}

li ul li
{
	margin-bottom: 5px !important;
}

ul ul
{
	border: none !important;
	margin-left: 20px;
}

.table-info ol img, .table-info ul img
{
	width: 100%;
	max-width: 300px;
}

.table-info th
{
	width: 50%;
	padding: 20px;
	font-size: 1.5em;
	border: 2px solid black;
	background-image: url('../images/backgrounds/footer_bg.png');
	background-size: 64px;
}

.table-info td
{
	height: 100%;
	background-image: url('../images/backgrounds/mobile_nav_bg.png');
}

.table-info li
{
	margin-bottom: 20px;
}

.table-info li h2
{
	font-weight: normal;
	font-family: minecraft-bold;
	margin-bottom: 20px;
	margin: 0;
	padding: 0;
	display: inline;
}


/**play tutorial - taken from my old site, will refactor later **/
.questionare
{
	width: 100%;
	background-color: rgba(0, 0, 0, 0.1);
	border-radius: 15px;
	padding: 30px 0px;
	
	text-align: center;
	pointer-events: initial;
}

.questionare h1
{
	font-size: 2em;
	padding: 10px;
}

.answers
{
	display: table;
	border-spacing: 2.5vw;
	width: 100%;
}

.answers div
{
	height: 512px;
	width: 33.33%;
	height: 50vh;
	background-color: rgba(0, 0, 0, 0.1);
	display: table-cell;
	vertical-align:middle;
	padding: 15px;
	font-size: 1.5em;
	transition: transform .25s;
	text-shadow: var(--mcTextShadow);
}

.answers div img 
{
	width: 100%;
	display: block;
	margin: 0 auto;
	padding: 20px 0;
}

.answers div:hover
{
	cursor: pointer;
	transform: scale(1.05);
	background-color: rgba(0, 0, 0, 0.2);
	border: 2px solid var(--beanaPurple);
	transition: transform .5s, background-color .5s;
}

.tutorial
{
	width: 100%;
	background-color: rgba(0, 0, 0, 0.1);
	border-radius: 15px;
	padding: 30px 0px;
	text-align: center;
	pointer-events: initial;
	text-shadow: var(--mcTextShadow) !important;
}

.tutorial h1
{
	font-size: 2em;
	padding: 5px;
	text-shadow: var(--mcTextShadow);
}

.tutorial p
{
	padding: 5px;
	text-shadow: var(--mcTextShadow);
}

.tutorial img
{
	width: 60%;
	max-width: 1000px;
	margin-bottom: 30px;
}

.hide
{
	display: none;
}