@charset "utf-8";

/**
 * Stylesheet Index:
 * =================
 *
 * 0. Reset
 * 1. Imports
 * 2. Elements
 * 3. ID & Class
 * 4. Pseudoclass
 * 5. Media Queries
 */

/* 0. Reset */
* {
	-moz-box-sizing:  border-box;
	box-sizing:      border-box;
}
body {
	color:				#333;
	width:				100%;
	margin:				0;
	padding:			0;
	min-width:			320px;
	font-family:		"Open Sans", Sans-serif;
	overflow-y:			scroll;
	background:			#eee;
	-webkit-transform:	translateZ(0);
	-moz-transform:		translateZ(0);
	-ms-transform:		translateZ(0);
	-o-transform:		translateZ(0);
	transform:			translateZ(0);
}
a {
	color:				#79B;
	outline:			0;
	text-decoration:	none;
}
a:hover {
	color:				#E73;
}
h1, h2, h3, h4, h5, h6 {
	margin:				0;
	text-shadow:		0 0 1px #666;
	font-family:		"Open Sans Condensed", Sans-serif;
}

/* 1. Imports */
/**
 * On a second thought, I'll just import the fonts with <link>
 * tags in the HTML itself, for following reasons:
 *
 * I. Numerous @font-face declarations are too messy to deal with
 * II. Adding @import rules in here will break parallel downloads
 * III. Using <style> & @import in HTML itself is again, pathetic
 *
 * Till I figure out something better, let's keep it this way.
 */

/* 2. Elements */
body > * {
	margin:				auto;
}
header {
	padding:			4rem 0 2rem;
	text-align:			center;
	font-family:		"Open Sans Condensed", Sans-serif;
}
hgroup {
	text-align:			center;
}
hgroup h1 {
	font-size:			4rem;
	line-height:		3rem;
	margin-bottom:		1rem;
	letter-spacing:		-0.25rem;
	text-transform:		uppercase;
}
hgroup h2 {
	font-size:			2rem;
	line-height:		2rem;
}
hgroup h3 {
	font-size:			1.2rem;
	line-height:		1.2rem;
}
nav {
	padding:			2px 0;
	background-image:	-webkit-linear-gradient(left, rgba(255, 255, 255, 0), #E73,  rgba(255, 255, 255, 0));
	background-image:	-moz-linear-gradient(left, rgba(255, 255, 255, 0), #E73,  rgba(255, 255, 255, 0));
	background-image:	-ms-linear-gradient(left, rgba(255, 255, 255, 0), #E73,  rgba(255, 255, 255, 0));
	background-image:	-o-linear-gradient(left, rgba(255, 255, 255, 0), #E73,  rgba(255, 255, 255, 0));
	background-image:	linear-gradient(left, rgba(255, 255, 255, 0), #E73,  rgba(255, 255, 255, 0));
}
nav div {
	text-align:			center;
	background:			#eee;
}
nav .navLink {
	width:				3em;
	margin:				auto 0.5rem;
	text-align:			center;
	display:			inline-block;
}
section {
	text-align: 		justify;
	-ms-text-justify:	distribute-all-lines;
	text-justify:		distribute-all-lines;
}
section article { margin: 0 auto 2rem; }
section aside { padding: 0 1rem; }
article h2 { margin: auto 1rem 1rem; }
footer { text-align: center; }

/* 3. ID & Class */
#copyleft {
	margin:				auto auto 2rem;
	font-size:			0.8rem;
}
#copyleft span {
	font-size:			120%;
	font-weight:		bold;
	display:			inline-block;
	-webkit-transform:	scaleX(-1);
	-moz-transform:		scaleX(-1);
	-ms-transform:		scaleX(-1);
	-o-transform:		scaleX(-1);
	transform:			scaleX(-1);
}
.inlineBlock > * {
	display:			inline-block;
	vertical-align:		top;
}
.portal {
	margin-bottom:		1rem;
	border:				1px solid #ddd;
	border-radius:		4px;
}
.portal div {
	color:				#678;
	padding:			0.5rem 1rem;
	background:			#f0f0f0;
	border-bottom:		1px solid #ddd;
	border-radius:		4px 4px 0 0;
}
.portal a {
	padding:			0.5rem 0.5rem 0.5rem 1rem;
	display:			block;
	font-size:			0.8rem;
	background:			#fff;
}
.share iframe {
	float:				right;
	margin-top:			-3px;
}

/* 4. Pseudoclass */
.inlineBlock:after {
	width:				100%;
	height:				0;
	font-size:			0;
	line-height:		0;
	visibility:			hidden;
	content:			".";
	display:			inline-block;
}
.portal a:before {
	content:			"» ";
}

/* 5. Media Queries */
@media screen and (max-width: 449px) {
	body > * { width: 100%; }
	nav { font-size: 1rem; }
	nav span.navLink a { margin: auto 4px; }
	section.inlineBlock > * { display: block; }
}
@media screen and (min-width: 450px) {
	body > * { width: 100%; }
	nav { font-size: 1.5rem; }
	nav span.navLink a { margin: auto 4px; }
	section.inlineBlock > * { display: block; }
}
@media screen and (min-width: 700px) {
	nav { font-size: 2rem; }
	nav span.navLink a { margin: auto; }
	section.inlineBlock > * { display: inline-block; }
	section.inlineBlock article { width: 65%; }
	section.inlineBlock aside { width: 35%; }
}
@media screen and (min-width: 1000px) {
	body > * { width: 960px; }
	section.inlineBlock article { width: 680px; }
	section.inlineBlock aside { width: 280px; }
}
