.title {
	color: #e9f4e0;
	display: flex;
	justify-content: center;
	align-items: stretch;
	padding: 0 20px 20px;
	margin: -20px 0 0;
	max-width: 100%;
}

.title.spaced { margin: 20px 0 40px; }

.intro {
	width: 740px;
	display: flex;
	flex-direction: column;
	background-image: url("/images/index/background.svg");
	background-size: contain;
	background-position: top center;
	background-repeat: no-repeat;
	padding: 160px 45px 190px 295px;
	position: relative;
}

.intro:before, .intro:after {
	position: absolute;
	content: "";
	height: 180px;
	width: 180px;
	display: block;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.intro:before {
	background-image: url("/images/index/foreground_bottom.png");
	bottom: 70px;
	left: 140px;
}

.intro:after {
	background-image: url("/images/index/foreground_right.png");
	top: 90px;
	right: 0;
}

.title .wordmark { 
	margin: 0 0 8px; 
	display: flex;
	align-items: flex-end;
	flex-wrap: wrap;
}

.title .wordmark .logo {
	height: 95px;
	width: 250px;
}

.title .wordmark .languages {
	image-rendering: pixelated;
	height: 38px;
	width: auto;
	margin: 0 0 12px 2px;
	line-height: 20px;
}

.title h1 {
	line-height: 0.72em;
	font-weight: 400;
	margin: 0 0 40px;
	font-size: 2.7em;
	letter-spacing: -1.3pt;
	flex-grow: 2;
}

.title .bottom {
	list-style-type: none;
	padding: 0;
	margin: 0;
}

.title .bottom.info {
	font-family: var(--ancillary-font);
	font-size: 14px;
	margin-bottom: 15px;
}

.title .bottom li { 
	display: inline-block; 
	padding: 0;
}

.title .bottom li { margin-right: 10px; }

.title .bottom .icon {
	height: 24px;
	width: 24px;
	top: 0;
	margin: 2px 0;
}

.title .intro a { color: #d0fcab; }

.indexPage main { 
	margin: 0 auto 10px;
	max-width: 535px;
}

.indexPage .area {
	--theme: #35d89a;
	--theme-dark: #5f7f73;
	--theme-trim: #28322e;
	
	display: block;
	padding: 0 0 80px;
	margin: 0 auto;
	box-sizing: border-box;
	color: inherit;
}

.indexPage .area.sketchbook { 
	--theme: #a3cc33; 
	--theme-dark: #8aa57a; 
	--theme-trim: #394132;
}

.indexPage .area.blog { 
	--theme: #cc9b33; 
	--theme-dark: #7f7a5f; 
	--theme-trim: #323027;
}

.indexPage .area.projects { 
	--theme: #cc3360; 
	--theme-dark: #7f5f63; 
	--theme-trim: #302627;
}

.indexPage .area.liked { 
	--theme: #33ccbc;
	--theme-dark: #5f7c7f; 
	--theme-trim: #283132;
}

.indexPage .area h2 {
	line-height: inherit;
	padding: 23px 0 7px;
	margin: 0;
	clear: none;
	font-family: var(--ancillary-font);
	font-size: var(--ancillary-size);
	letter-spacing: 0;
	color: var(--theme-trim);
}

.indexPage main .area > img {
	float: left;
	width: 30px;
	height: 30px;
	margin: 2px 12px 0 0;
	image-rendering: pixelated;
	filter: saturate(0.8);
}

.area .content, .area .more { margin-left: 42px; }
.area .content a h3, .area .more a { color: var(--theme); }

.area .content a {
	color: var(--theme-dark);
	display: block;
	margin: 2px 0 14px;
	position: relative;
}

.area .content a h3 { font-size: 1.5em; }

.area .content a:before, .area .content a:after {
	content: "";
	display: block;
	background: var(--theme-trim);
	pointer-events: none;
	position: absolute;
	left: -25px;
}

.area .content a:before {
	width: 1px;
	height: 150%;
	top: 2px;
}

.area .content a:after {
	width: 10px;
	height: 1px;
	top: 14px;
}

.area .content a:last-child { margin-bottom: 0; }
.area .content a:last-child:before { height: 12px; }

.area .content a:hover { text-decoration: none; }
.area .content a:hover h3 { text-decoration: underline; }

.area .content a .preview {
	margin: -3px 0 0;
	font-family: var(--ancillary-font);
	font-size: var(--ancillary-size);
}

.area .more {
	padding: 20px 0 0;
	font-family: var(--ancillary-font);
	font-size: var(--ancillary-size);
}

.area .more a { margin-right: 12px; }

.area .more .icon, .indexPage .random .icon {
	width: 15px;
	margin: 0;
	top: 0;
}

.area .external h3:after {
	content: "";
	width: 7px;
	height: 7px;
	margin: 0 0 3px 5px;
	image-rendering: pixelated;
	display: inline-block;
	background: url("/images/index/external.png");
	background-size: contain;
}

.indexPage .random {
	display: inline-block;
	margin: 10px 0 50px;
	font-family: var(--ancillary-font);
	font-size: var(--ancillary-size);
	opacity: 0.8;
}

.indexPage footer { color: #777c77; }
.indexPage footer a { opacity: 0.65; }

@media screen and (max-width: 1100px) {
	.title { 
		padding: 0 0 50px; 
		margin: 0;
	}
	
	.intro {
		padding: 75px 20px 50px 60px;
		width: auto;
		overflow: hidden;
		background-image: 
			url("/images/index/background.svg#top"),
			url("/images/index/background.svg#bottom");
		background-position: top left, bottom left;
		background-size: 1100px 70px, 1100px 30px;
	}
	
	.intro:before {
		bottom: 0px;
		left: -50px;
	}
	
	.intro:after {
		top: -20px;
		right: -20px;	
	}
	
	.title .bottom .icon { width: 18px; }
	
	.indexPage main {
		margin-left: 20px;
		margin-right: 20px;
	}
}

@media screen and (max-width: 600px) {
	.intro { 
		padding: 30px 25px 50px; 
		background-image: none;
	}
	
	.intro:before {
		bottom: 0;
		left: -70px;
	}

	.title .wordmark .logo {
		height: 24vw;
		width: 50vw;
		margin-bottom: -12px;
	}
	
	.title .wordmark, .title .wordmark .languages { display: block; }
}
