/* Metrova Gaming Roleplay - website. Layout modelled on the classic 990px SA-MP community sites. */
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
	background: #292929 url("../images/bg.jpg") top center fixed no-repeat;
	background-size: cover;
	font: 13px/1.4 "Trebuchet MS", Arial, Helvetica, sans-serif;
	color: #aaaaaa;
}
a, a:link, a:visited { color: #3CB2F6; text-decoration: none; }
a:hover, a:active { color: #7fd0ff; }
img { border: 0; max-width: 100%; }
.clear { clear: both; }

h1, h2, h3, h4, h5, h6 { font-family: "Liberation Sans", Arial, Helvetica, sans-serif; font-weight: normal; line-height: 1; margin: 0 0 .5em; padding: 0 0 .2em; color: #cccccc; }
h1 { font-size: 1.85em; } h2 { font-size: 1.5em; } h3 { font-size: 1.35em; }
h1 strong, h2 strong, h3 strong { font-weight: bold; color: #3CB2F6; }
h1 a:link, h1 a:visited { color: #cccccc; } h1 a:hover { color: #ffffff; }
.impact { font-size: 1.1em; line-height: 1.5; }
p { margin: 0 0 1em; }

/* ---------- page frame ---------- */
#Wrapper, #PageWrapper { position: relative; }
#PageWrapper { width: 990px; max-width: 100%; margin: 0 auto; padding: 25px 0 0; }
#Header, .pageMain, #Footer { width: 990px; max-width: 100%; }

/* ---------- header ---------- */
#Header { position: relative; padding-top: 6px; }
#MainMenu { position: relative; top: -12px; right: 20px; float: right; z-index: 99; }
#menu-main-menu {
	list-style: none; margin: 0; padding: 0 14px; height: 40px; display: flex; align-items: center;
	background: linear-gradient(#2c2c2c, #121212); border: 1px solid #000; border-top: 0;
	border-radius: 0 0 8px 8px; box-shadow: 0 4px 10px rgba(0,0,0,.6), inset 0 -1px 0 #333;
}
#menu-main-menu li { margin: 0; }
#menu-main-menu a:link, #menu-main-menu a:visited {
	display: block; padding: 0 11px; line-height: 40px; color: #CACACA;
	font: bold 12px/40px "Trebuchet MS", Arial, sans-serif; text-shadow: -1px -1px 0 #000;
}
#menu-main-menu a:hover, #menu-main-menu li.current a { color: #ffffff; }
#HeaderRight { clear: right; float: right; margin: 22px 26px 25px; }
.wordmark {
	font: 200 36px/36px "Century Gothic", "Raleway", Arial, sans-serif; letter-spacing: -0.5px; color: #ffffff;
	text-shadow: 0 2px 6px rgba(0,0,0,.8);
}
.wordmark strong { font-weight: 200; color: #1E90FF; }
#Logo { float: left; margin: -44px 0 24px 0; }
#Logo img { display: block; height: 112px; width: auto; filter: drop-shadow(0 4px 10px rgba(0,0,0,.7)); }

/* ---------- slideshow ---------- */
#Slideshow { position: relative; width: 938px; max-width: calc(100% - 52px); margin: 0 26px 18px; }
#Slides {
	position: relative; width: 100%; aspect-ratio: 938 / 342; overflow: hidden; background: #1D1D1D;
	box-shadow: 0 0 0 1px #000, 0 0 0 5px rgba(255,255,255,.04), 0 12px 28px rgba(0,0,0,.75);
}
#Slides .slide { position: absolute; inset: 0; transform: translateX(100%); transition: transform .75s cubic-bezier(.22,.61,.36,1); }
#Slides .slide.active { transform: translateX(0); }
#Slides .slide.leaving { transform: translateX(-100%); }
#Slides .slide.from-left { transform: translateX(-100%); transition: none; }
#Slides .slide.leaving-right { transform: translateX(100%); }
#Slides img { display: block; width: 100%; height: 100%; }
a.slidePrev, a.slideNext {
	position: absolute; top: 50%; margin-top: -32px; width: 51px; height: 64px; z-index: 30;
	background: rgba(0,0,0,.55); border: 1px solid rgba(255,255,255,.08); opacity: 0; transition: opacity .25s, background .25s;
}
a.slidePrev { left: 11px; border-radius: 0 6px 6px 0; }
a.slideNext { right: 11px; border-radius: 6px 0 0 6px; }
#Slideshow:hover a.slidePrev, #Slideshow:hover a.slideNext { opacity: 1; }
a.slidePrev:hover, a.slideNext:hover { background: rgba(0,0,0,.8); }
a.slidePrev::after, a.slideNext::after {
	content: ""; position: absolute; top: 50%; left: 50%; width: 14px; height: 14px; margin: -7px 0 0 -7px;
	border: solid #dddddd; border-width: 0 0 3px 3px;
}
a.slidePrev::after { transform: translateX(3px) rotate(45deg); }
a.slideNext::after { transform: translateX(-3px) rotate(-135deg); }
#slidePager { position: absolute; top: -21px; right: -2px; display: flex; gap: 2px; z-index: 30; }
#slidePager a {
	display: block; width: 14px; height: 14px; border-radius: 50%; text-indent: -999px; overflow: hidden;
	background: radial-gradient(circle at 40% 35%, #8a8a8a, #3a3a3a 70%); box-shadow: inset 0 1px 2px rgba(0,0,0,.8), 0 1px 0 rgba(255,255,255,.08);
}
#slidePager a:hover { background: radial-gradient(circle at 40% 35%, #cfcfcf, #6a6a6a 70%); }
#slidePager a.activeSlide { background: radial-gradient(circle at 40% 35%, #9fdcff, #1E90FF 70%); }

/* ---------- content ---------- */
.contentArea { margin: 0 26px; width: 938px; max-width: calc(100% - 52px); padding: 15px 0; }
.two-thirds { float: left; width: 585px; }
.one-third { float: right; width: 292px; }

.ribbon { position: relative; height: 52px; margin: 0 -4px 8px 0; display: flex; }
.ribbon .wrapAround { display: none; }
.ribbon .tab {
	flex: 1; display: flex; align-items: center; justify-content: space-between; padding: 0 0 0 0;
	border-bottom: 1px solid rgba(255,255,255,.06);
}
.ribbon span { font-family: "Liberation Sans", Arial, sans-serif; color: #A5A8A9; }
.ribbon span.blogDate { font-size: 1.85em; font-weight: bold; color: #CDCDCD; }
.ribbon span.blogPostInfo { font-size: 1.1em; }
.ribbon span a:link, .ribbon span a:visited { color: #ffffff; font-weight: bold; }
.ribbon span a:hover { color: #3CB2F6; }
.blogPostSummary { margin: 0 0 22px; }
.blogPostSummary h1 { font-size: 1.85em; margin: 6px 0 .6em; }
.blogPostSummary p { margin: 0 0 1em; }

.pagination { display: block; margin: 1em 0 2em; }
.pagination a { padding: 3px 8px; margin: 0 2px; border: 1px solid #D3D3D3; background: #fff; border-radius: 4px; color: #3CB2F6 !important; }
.pagination a:hover { background: #3CB2F6; border-color: #3CB2F6; color: #fff !important; }

/* ---------- sidebar widgets ---------- */
.widget { margin: 0 0 22px; padding: 14px 16px 16px; background: rgba(10,10,10,.72); border: 1px solid #262626; border-radius: 4px; box-shadow: 0 6px 16px rgba(0,0,0,.5); }
.widget h3 { margin-bottom: .7em; }
.widget ul.sideNav { list-style: none; margin: 0; padding: 0; }
.widget ul.sideNav li a { display: block; padding: 7px 2px; font-size: 14px; border-bottom: 1px dotted #333; text-shadow: #000 -1px -1px 0; color: #cfcfcf; }
.widget ul.sideNav li a:hover { color: #ffffff; padding-left: 6px; transition: padding .15s; }
.widget ul.sideNav li:last-child a { border-bottom: 0; }

.play-widget .server-label { margin: 0 0 4px; font-size: 11px; text-transform: uppercase; letter-spacing: 1.5px; color: #8f8f8f; }
.server-ip {
	font: 700 22px/1 "Oswald", Arial, sans-serif; letter-spacing: .5px; color: #ffffff; padding: 10px 12px; margin: 0 0 6px;
	background: #050505; border: 1px solid #1E90FF55; border-radius: 3px; text-align: center; cursor: pointer;
}
.server-ip:hover { border-color: #1E90FF; }
.server-note { font-size: 11px; color: #777; margin-bottom: 12px; }

.join-card {
	display: flex; align-items: center; justify-content: center; gap: 8px; height: 112px; margin: -14px -16px 12px;
	border-radius: 4px 4px 0 0; text-decoration: none !important;
	background: linear-gradient(135deg, #1b1b1b, #050505); border-bottom: 1px solid #262626;
}
.join-big { font: 700 64px/1 "Oswald", Impact, sans-serif; color: #ffffff; letter-spacing: 1px; }
.join-small { font: 500 18px/1.05 "Oswald", Impact, sans-serif; color: #1E90FF; text-transform: uppercase; }
.join-small b { color: #ffffff; font-weight: 700; font-size: 24px; }
.discord-card .join-small { color: #8ea1e1; }

.btn, .btn:link, .btn:visited {
	display: inline-block; padding: 8px 16px; border-radius: 4px; border: 1px solid #000;
	background: linear-gradient(#4a4a4a, #262626); box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 2px 4px rgba(0,0,0,.6);
	color: #E1E0DF !important; font: bold 13px "Trebuchet MS", Arial, sans-serif; text-shadow: -1px -1px 2px #333;
}
.btn:hover { background: linear-gradient(#5a5a5a, #2f2f2f); color: #ffffff !important; }

/* ---------- footer ---------- */
#Footer { margin-top: 10px; }
#FooterContent { background: rgba(0,0,0,.55); border-top: 1px solid rgba(255,255,255,.06); padding: 20px 0 6px; overflow: hidden; }
#Footer .contentArea { padding-bottom: 0; }
#Footer .one-third { float: left; width: 262px; margin: 0 0 0 25px; padding: 0 25px 0 0; border-right: 1px dotted #333; min-height: 90px; }
#Footer .contentArea > .one-third:first-child { margin-left: 0; }
#Footer .one-third.last { border-right: 0; }
#Footer h3 { color: #eeeeee; font-size: 1.15em; }
#Footer, #Footer p { color: #8F8F8F; }
.social { display: flex; gap: 6px; }
.soc { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 6px;
	background: linear-gradient(#ededed, #bdbdbd); color: #333 !important; box-shadow: inset 0 1px 0 #fff, 0 1px 3px rgba(0,0,0,.7); }
.soc svg { width: 18px; height: 18px; }
.soc:hover { background: linear-gradient(#ffffff, #d6d6d6); color: #1E90FF !important; }
.footer-ip { font: 700 18px/1 "Oswald", Arial, sans-serif; color: #ffffff !important; margin: 4px 0 6px; }
.footer-small { font-size: 11px; }
.verified { text-align: center; }
.verified img { width: 70px; height: auto; filter: drop-shadow(0 3px 6px rgba(0,0,0,.8)); }
.verified i { color: #cfcfcf; }
#FooterBottom { height: 12px; }
#Copyright { font-size: .9em; margin: 0 0 0 11px; }
#Copyright p { margin: 0; padding: 0 0 1em; color: #9a9a9a; }

/* Discord bits stay hidden until an invite link is set in index.html */
.needs-discord { display: none !important; }
.has-discord .needs-discord { display: revert !important; }
.has-discord .social .needs-discord { display: inline-flex !important; }

/* ---------- small screens ---------- */
.ribbon span.blogDate { white-space: nowrap; margin-right: 12px; }
@media (max-width: 1000px) {
	#PageWrapper { padding-top: 0; }
	#Header { display: flex; flex-direction: column; }
	#Logo { order: 2; } #HeaderRight { order: 3; } #MainMenu { order: 1; }
	#MainMenu { float: none; top: 0; right: 0; }
	#menu-main-menu { border-radius: 0; justify-content: center; flex-wrap: wrap; height: auto; padding: 4px 8px; }
	#HeaderRight { float: none; margin: 14px 16px 8px; text-align: center; }
	.wordmark { font-size: 26px; line-height: 30px; }
	#Logo { float: none; margin: 0 0 16px; text-align: center; }
	#Logo img { display: inline-block; height: 84px; }
	#Slideshow, .contentArea { margin-left: 16px; margin-right: 16px; max-width: calc(100% - 32px); width: auto; }
	.two-thirds, .one-third, #Footer .one-third { float: none; width: auto; margin: 0 0 18px; padding: 0; border-right: 0; }
	.ribbon span.blogPostInfo { font-size: .95em; text-align: right; }
}
