/* FOUNDATION */
html, body, a, article, aside, div, footer, h1, h2, h3, h4, 
header, i, li, nav, p, section, span, ul {
	display: block;
	padding: 0;
	margin: 0;
	font-style: normal;
}
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
html, body {
	width: 100%;
	background-color: #faf9f9;
	color: var(--color-black);
	font-family: 'Open Sans', sans-serif;
	scroll-behavior: smooth;
}
a,
a:visited {
	text-decoration: none;
	color: var(--color-link);
	display: inline-block;
	transition: color 0.3s ease-in-out;
}
a:hover {
	color: var(--color-link-hover)
}
#page-wrapper {
	width: 100%;
	height: auto;
	min-height: 100%;
}
@media screen and (min-width: 769px) {
	#page-wrapper.lander-wrapper {
		position: fixed;
		padding: 220px 0 0 0;
		z-index: 1;
	}
}
@media screen and (min-width: 601px) and (max-width: 768px) {
	#page-wrapper.lander-wrapper {
		position: fixed;
		padding: 270px 0 0 0;
		z-index: 1;
	}
}
@media screen and (max-height: 1024px) and (max-width: 600px) {
	#page-wrapper.lander-wrapper {
		position: fixed;
		padding: 220px 0 0 0;
		z-index: 1;
	}
}
#page-wrapper.content-screen {
	position: relative;
	padding: 220px 0 0 0;
	z-index: 2;
}
#page-wrapper.latest-content-wrapper {
	position: relative;
	margin: -75px 0 0 0;
	padding: 220px 0 145px 0;
	background-color: #fff;
	z-index: 2;
}
#page-wrapper.content-wrapper {
	position: relative;
	margin: 0;
	padding: 220px 0 145px 0;
	background-color: #fff;
	z-index: 2;
}

/* NAV */
@media screen and (min-width: 769px) {
	nav {
		position: fixed;
		display: inline-block;
		width: 100%;
		height: auto;
		padding: 55px 125px;
		background-color: #faf9f9;
		z-index: 3;
	}
	nav ul {
		float: right;
		background-color: #faf9f9;
	}
	nav ul a,
	nav ul a:visited {
		display: inline-block;
		text-transform: uppercase;
		font-size: 14px;
		letter-spacing: 1px;
		transition: color 0.3s ease-in-out;
		padding: 5px 10px;
		margin: 0 20px 0 0;
	}
	nav ul a:last-child {
		margin: 0;
	}
	nav ul a:hover {
		color: var(--color-link-hover);
	}
}
@media screen and (min-width: 601px) and (max-width: 768px) {
	nav {
		position: fixed;
		display: inline-block;
		width: 100%;
		height: auto;
		padding: 55px 60px;
		background-color: #faf9f9;
		z-index: 3;
	}
	nav ul {
		float: right;
		background-color: #faf9f9;
	}
	nav ul a,
	nav ul a:visited {
		display: inline-block;
		text-transform: uppercase;
		font-size: 14px;
		letter-spacing: 1px;
		transition: color 0.3s ease-in-out;
		padding: 5px 10px;
		margin: 0 10px 0 0;
	}
	nav ul a:last-child {
		margin: 0;
	}
	nav ul a:hover {
		color: var(--color-link-hover);
	}
}
@media screen and (max-width: 600px) {
	nav {
		position: fixed;
		display: inline-block;
		width: 100%;
		height: auto;
		padding: 40px 20px;
		background-color: #faf9f9;
		z-index: 3;
	}
	nav ul {
		float: right;
		background-color: #faf9f9;
	}
	nav ul a,
	nav ul a:visited {
		display: inline-block;
		text-transform: uppercase;
		font-size: 13px;
		letter-spacing: 1px;
		transition: color 0.3s ease-in-out;
		padding: 5px 5px;
		margin: 0 12px 0 0;
	}
	nav ul a:last-child {
		margin: 0;
	}
	nav ul a:hover {
		color: var(--color-link-hover);
	}
}

/* LANDER */
.lander-tri-wrapper {
	position: relative;
	display: table;
	width: auto;
	margin: 0 auto;
}
@media screen and (min-width: 769px) {
	.lander-line {
		position: absolute;
		display: table;
		height: 0;
		border-top: 25px solid #f4f3f3;
		opacity: 0.7;
		z-index: 2;
	}
	.lander-line.line-one {
		top: 75px;
		width: 590px;
		left: -20px;
	}
	.lander-line.line-two {
		top: 150px;
		width: 510px;
		left: 20px;
	}
	.lander-tri {
		position: relative;
		width: 550px;
		height: 500px;
		margin: 0 -100px 0 100px;
		background: url('/img/mtns_u.jpg');
		background-position: 100% 100%;
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
		clip-path: polygon(50% 0, 0 100%, 100% 100%);
		-webkit-clip-path: polygon(50% 0, 0 100%, 100% 100%);
		transform: rotate(180deg) translateX(100px);
		opacity: 0.85;
		z-index: 1;
	}
	.lander-title {
		position: absolute;
		display: table;
		font-family: 'Quicksand', sans-serif;
		font-size: 16px;
		letter-spacing: 1px;
		transform: rotate(-61deg);
		right: 140px;
		bottom: 70px;
		opacity: 0.9;
	}
}
@media screen and (min-width: 601px) and (max-width: 768px) {
	.lander-line {
		position: absolute;
		display: table;
		height: 0;
		border-top: 25px solid #f4f3f3;
		opacity: 0.7;
		z-index: 2;
	}
	.lander-line.line-one {
		top: 75px;
		width: 490px;
		left: -20px;
	}
	.lander-line.line-two {
		top: 150px;
		width: 410px;
		left: 20px;
	}
	.lander-tri {
		position: relative;
		width: 450px;
		height: 400px;
		margin: 0 -100px 0 100px;
		background: url('/img/mtns_u.jpg');
		background-position: 100% 100%;
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
		clip-path: polygon(50% 0, 0 100%, 100% 100%);
		-webkit-clip-path: polygon(50% 0, 0 100%, 100% 100%);
		transform: rotate(180deg) translateX(100px);
		opacity: 0.85;
		z-index: 1;
	}
	.lander-title {
		position: absolute;
		display: table;
		font-family: 'Quicksand', sans-serif;
		font-size: 16px;
		letter-spacing: 1px;
		transform: rotate(-61deg);
		right: 90px;
		bottom: 70px;
		opacity: 0.9;
	}
}
@media screen and (max-width: 600px) {
	.lander-line {
		position: absolute;
		display: table;
		height: 0;
		border-top: 25px solid #f4f3f3;
		opacity: 0.7;
		z-index: 2;
	}
	.lander-line.line-one {
		top: 45px;
		width: 300px;
		left: 0;
	}
	.lander-line.line-two {
		top: 100px;
		width: 220px;
		left: 40px;
	}
	.lander-tri {
		position: relative;
		width: 300px;
		height: 250px;
		margin: 0 -100px 0 100px;
		background: url('/img/mtns_u.jpg');
		background-position: 100% 100%;
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
		clip-path: polygon(50% 0, 0 100%, 100% 100%);
		-webkit-clip-path: polygon(50% 0, 0 100%, 100% 100%);
		transform: rotate(180deg) translateX(100px);
		opacity: 0.85;
		z-index: 1;
	}
	.lander-title {
		position: absolute;
		display: table;
		font-family: 'Quicksand', sans-serif;
		font-size: 13px;
		letter-spacing: 1px;
		transform: rotate(-60deg);
		right: 45px;
		bottom: 45px;
		opacity: 0.9;
	}
}

/* CONTENT */
@media screen and (min-width: 601px) {
	#latest-lander-wrapper {
		width: 60%;
		min-width: 350px;
		margin: 0 auto;
	}
	.latest-lander-title {
		width: 100%;
		padding: 0 0 35px 120px;
		font-size: 11px;
		font-weight: 600;
		letter-spacing: 2px;
		font-family: 'Quicksand', sans-serif;
		text-transform: uppercase;
		color: #bbb;
	}
	.latest-lander-date {
		display: table-cell;
		text-align: justify;
		text-align-last: justify;
		letter-spacing: -0.1em;
		padding: 0 70px 0 0;
		font-family: 'Quicksand', sans-serif;
		cursor: default;
	}
	.latest-lander-date span {
		padding: 0 0 5px 0;
	}
	.latest-lander-date span:last-child {
		padding: 0;
	}
	.latest-date-month {
		text-transform: uppercase;
		font-size: 12px;
		min-width: 68px;
	}
	.latest-date-day {
		font-size: 44px;
	}
	.latest-date-year {
		font-size: 12px;
	}
	.latest-lander-content {
		display: table-cell;
		vertical-align: top;
	}
	.latest-lander-content-title h1 {
		font-weight: normal;
		font-family: 'Quicksand', sans-serif;
		font-size: 32px;
		letter-spacing: 1px;
	}
	.latest-lander-content-title h1 i {
		font-size: 13px;
	}
	.latest-lander-content-title h2 {
		font-weight: normal;
		text-transform: lowercase;
		font-family: 'Quicksand', sans-serif;
		font-size: 14px;
		letter-spacing: 0.5px;
		color: #989898;
	}
	.latest-lander-content-title h3 {
		font-weight: normal;
		font-family: 'Quicksand', sans-serif;
		font-size: 24px;
		letter-spacing: 1px;
	}
	.chapter-list {
		font-family: 'Open Sans', sans-serif;
		letter-spacing: 0.5px;
		font-size: 12px;
		width: 100%;
		min-width: 230px;
		margin: 35px 0 0 0;
		border-left: 3px solid var(--color-link-hover);
	}
	.chapter-list ul {
		list-style: none;
		padding: 3px 0 3px 20px;
	}
	.chapter-list .table-contents {
		text-transform: lowercase;
		padding: 5px 5px 5px 0;
	}
	.chapter-list .table-contents-chap {
		padding: 5px 5px 5px 15px;
	}
	.latest-lander-content-title p {
		padding: 35px 0;
		font-size: 14px;
		letter-spacing: 0.5px;
		line-height: 21px;
	}
}
@media screen and (max-width: 600px) {
	#latest-lander-wrapper {
		width: 100%;
		padding: 0 50px;
		margin: 0 auto;
	}
	.latest-lander-title {
		padding: 0 0 35px 0;
		font-size: 11px;
		font-weight: 600;
		letter-spacing: 2px;
		font-family: 'Quicksand', sans-serif;
		text-transform: uppercase;
		color: #bbb;
	}
	.latest-lander-date {
		display: table;
		width: 100%;
		font-family: 'Quicksand', sans-serif;
		cursor: default;
		padding: 0 0 35px 0;
	}
	.latest-lander-date span {
		padding: 0 0 5px 0;
	}
	.latest-lander-date span:last-child {
		padding: 0;
	}
	.latest-date-month {
		text-transform: uppercase;
		font-size: 18px;
	}
	.latest-date-day {
		font-size: 18px;
	}
	.latest-date-year {
		font-size: 18px;
	}
	.latest-lander-content {
		display: table;
		width: 100%;
	}
	.latest-lander-content-title h1 {
		font-weight: normal;
		font-family: 'Quicksand', sans-serif;
		font-size: 32px;
		letter-spacing: 1px;
	}
	.latest-lander-content-title h1 i {
		font-size: 13px;
	}
	.latest-lander-content-title h2 {
		font-weight: normal;
		text-transform: lowercase;
		font-family: 'Quicksand', sans-serif;
		font-size: 14px;
		letter-spacing: 0.5px;
		color: #989898;
	}
	.latest-lander-content-title h3 {
		font-weight: normal;
		font-family: 'Quicksand', sans-serif;
		font-size: 24px;
		letter-spacing: 1px;
	}
	.chapter-list {
		font-family: 'Open Sans', sans-serif;
		letter-spacing: 0.5px;
		font-size: 12px;
		width: 100%;
		min-width: 230px;
		margin: 35px 0 0 0;
		border-left: 3px solid var(--color-link-hover);
	}
	.chapter-list ul {
		list-style: none;
		padding: 3px 0 3px 20px;
	}
	.chapter-list .table-contents {
		text-transform: lowercase;
		padding: 5px 5px 5px 0;
	}
	.chapter-list .table-contents-chap {
		padding: 5px 5px 5px 15px;
	}
	.latest-lander-content-title p {
		padding: 35px 0;
		font-size: 14px;
		letter-spacing: 0.5px;
		line-height: 21px;
	}
}
.tags-list {
	font-size: 13px;
	text-transform: lowercase;
	color: #787879;
	padding: 20px 0 0 0;
	font-family: 'Quicksand', sans-serif;
	letter-spacing: 0.5px;
}
.tags-list i {
	padding: 0 5px 0 0;
}
#notice-msg {
	padding: 25px;
	margin: 35px auto 0 auto;
	width: 80%;
	font-size: 14px;
	letter-spacing: 0.5px;
	line-height: 24px;
	background-color: var(--color-link-hover);
	color: #fff;
}

/* PORTFOLIO */
.port-title {
	width: 80%;
    min-width: 350px;
    margin: 0 auto;
	padding: 0 0 50px 0;
	color: #434242;
}
.port-title i {
	display: inline-block;
	font-size: 36px;
	padding: 0 15px 0 0;
}
.port-title span {
	display: inline-block;
	font-family: 'Quicksand', sans-serif;
	letter-spacing: 2px;
	font-size: 32px;
}
.port-title-span-deco {
	display: inline-block;
	font-size: 21px;
}
.port-sort-link {
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 12px;
    margin: 0 0 20px 0;
}
.port-sort-link a {
    margin: 0 0 0 7px;
}
@media screen and (min-width: 769px) {
	.port-sort-wrapper {
		column-count: 4;
		column-gap: 1em;
	}
}
@media screen and (min-width: 601px) and (max-width: 768px) {
	.port-sort-wrapper {
		column-count: 2;
		column-gap: 1em;
	}
}
@media screen and (max-width: 600px) {
	.port-sort-wrapper {
		column-count: 1;
		column-gap: 1em;
	}
}
.port-sort-block {
	display: inline-block;
	width: 100%;
}
.port-sort-title {
	font-family: 'Quicksand', sans-serif;
	color: #bab9b9;
	font-size: 18px;
	text-transform: uppercase;
	padding: 25px 15px 8px 0;
	margin: 0;
}
.port-sort-item {
	text-transform: lowercase;
	font-size: 14px;
	line-height: 24px;
	margin: 0 0 0 10px;
	letter-spacing: 0.5px;
}

/* About */
.about-wrapper {
	display: table;
	margin: 0 auto;
}
.about-bio p {
	padding: 10px 0;
}
@media screen and (min-width: 769px) {
	.about-pic {
		height: 300px;
		width: 300px;
		border: 4px solid var(--color-link-hover);
		border-radius: 50%;
		margin: 0 auto;
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
		-webkit-background-repeat: no-repeat;
		-moz-background-repeat: no-repeat;
		-o-background-repeat: no-repeat;
		background-repeat: no-repeat;
	}
	.about-bio {
		padding: 35px 15px;
		width: 550px;
		font-size: 14px;
		letter-spacing: 0.5px;
		line-height: 21px;
	}
}
@media screen and (max-width: 768px) {
	.about-pic {
		height: 170px;
		width: 170px;
		border: 4px solid var(--color-link-hover);
		border-radius: 50%;
		margin: 0 auto;
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
		-webkit-background-repeat: no-repeat;
		-moz-background-repeat: no-repeat;
		-o-background-repeat: no-repeat;
		background-repeat: no-repeat;
	}
	.about-bio {
		padding: 35px 10px;
		width: 330px;
		font-size: 14px;
		letter-spacing: 0.5px;
		line-height: 21px;
	}
}

/* BRIDGES */
@media screen and (min-width: 1381px) {
	#sat-block-table {
		display: table;
		height: auto;
		width: 80%;
		min-width: 490px;
		margin: 0 auto;
	}
	#sat-msg {
		padding: 25px;
		margin: 35px auto 35px auto;
		width: 100%;
		font-size: 14px;
		letter-spacing: 0.5px;
		line-height: 24px;
		font-style: italic;
		color: #bab9b9;
		text-align: center;
	}
	.sat-block {
		display: inline-block;
		border-left: 5px solid var(--color-link-hover);
		background-color: #faf9f9;
		padding: 20px;
		margin: 0 20px 17px 0;
		width: 31%;
	}
	.sat-block:nth-child(3n) {
		margin: 0 0 17px 0;
	}
	.sat-block h1 {
		font-weight: 500;
		margin: 0;
		padding: 0;
		font-family: 'Quicksand', sans-serif;
		font-size: 16px;
		color: var(--color-link);
		letter-spacing: 1px;
		text-transform: lowercase;
	}
	.sat-block h2 {
		font-weight: 100;
		font-size: 13px;
		padding: 3px 0 0 0;
		letter-spacing: 0.5px;
	}
}
@media screen and (min-width: 901px) and (max-width: 1380px) {
	#sat-block-table {
		display: table;
		height: auto;
		width: 80%;
		min-width: 505px;
		margin: 0 auto;
	}
	#sat-msg {
		padding: 25px;
		margin: 35px auto 35px auto;
		width: 80%;
		font-size: 14px;
		letter-spacing: 0.5px;
		line-height: 24px;
		font-style: italic;
		color: #bab9b9;
		text-align: center;
	}
	.sat-block {
		display: inline-block;
		border-left: 5px solid var(--color-link-hover);
		background-color: #faf9f9;
		padding: 20px;
		margin: 0 20px 17px 0;
		width: 48%;
	}
	.sat-block:nth-child(2n) {
		margin: 0 0 17px 0;
	}
	.sat-block h1 {
		font-weight: 500;
		margin: 0;
		padding: 0;
		font-family: 'Quicksand', sans-serif;
		font-size: 16px;
		color: var(--color-link);
		letter-spacing: 1px;
		text-transform: lowercase;
	}
	.sat-block h2 {
		font-weight: 100;
		font-size: 13px;
		padding: 3px 0 0 0;
		letter-spacing: 0.5px;
	}
}
@media screen and (max-width: 900px) {
	#sat-block-table {
		display: table;
		height: auto;
		width: 350px;
		margin: 0 auto;
	}
	#sat-msg {
		padding: 25px;
		margin: 35px auto 35px auto;
		width: 325px;
		font-size: 14px;
		letter-spacing: 0.5px;
		line-height: 24px;
		font-style: italic;
		color: #bab9b9;
		text-align: center;
	}
	.sat-block {
		display: table;
		border-left: 5px solid var(--color-link-hover);
		background-color: #faf9f9;
		padding: 20px;
		margin: 0 20px 17px 0;
		width: 100%;
	}
	.sat-block:nth-child(3n) {
		margin: 0 0 17px 0;
	}
	.sat-block h1 {
		font-weight: 500;
		margin: 0;
		padding: 0;
		font-family: 'Quicksand', sans-serif;
		font-size: 16px;
		color: var(--color-link);
		letter-spacing: 1px;
		text-transform: lowercase;
	}
	.sat-block h2 {
		font-weight: 100;
		font-size: 13px;
		padding: 3px 0 0 0;
		letter-spacing: 0.5px;
	}
}

/* FOOTER */
footer {
	position: relative;
	width: 100%;
	padding: 150px 50px;
	background-color: var(--color-link);
	z-index: 3;
}
footer .author-name {
	display: table;
	padding: 5px;
	margin: 0 auto;
	text-transform: lowercase;
	letter-spacing: 0.5px;
	font-size: 14px;
	color: #f4f3f3;
}
footer .author-links {
	display: table;
	padding: 5px;
	margin: 0 auto;
}
footer .author-links a {
	color: #f4f3f3;
	font-size: 21px;
	padding: 5px;
}