@font-face {
		font-family: 'Inter';
		src: url('Inter.var.woff2') format('woff2 supports variations'), url('/Inter.var.woff2') format('woff2-variations');
		font-weight: 100 1000;
}

:root {
		--color-jeangrey-1: #eee;
		--color-jeangrey-2: #d4d4d4;
		--color-jeangrey-3: #808283;
		--color-jeangrey-4: #414446;
		--color-jeangrey-5: #2c2f31;
		--color-jeangrey-6: #1c1c1c;
		--color-jedi: #fff;
		--color-sith: #000;
		--font-weight-light: 300;
		--font-weight-regular: 500;
		--font-weight-semibold: 700;
		--font-weight-bold: 900;
		--t: ease 0.3s;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
input, button, fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
		border: none;
		box-sizing: border-box;
		font-optical-sizing: auto;
		margin: 0;
		outline: none;
		padding: 0;
		text-decoration: none;
		vertical-align: baseline;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
}

/* =GENERAL
-------------------------------------------*/

html {
	font-family: 'Inter', -apple-system, system-ui, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
	background-color: var(--color-sith);
	color: var(--color-jedi);
}

body { 
	background-color: var(--color-sith);
	font-size: 21px;
	font-weight: var(--font-weight-regular);
	text-align: center;
}
	
@keyframes fadeInAnimation {
		0% {
				opacity: 0;
		}
		100% {
				opacity: 1;
		 }
}

/* =CORE
-------------------------------------------*/

h1, h2 {
	font-size: 25px;
	font-weight: var(--font-weight-regular);
	line-height: 28px;
	margin: 0 auto 8px auto;
}

h2 {
	color: var(--color-jeangrey-3);
	font-weight: var(--font-weight-bold);
}

p {
	font-size: 19px;
	font-weight: var(--font-weight-regular);
	line-height: 24px;
	margin-bottom: 0;
}

p strong { font-weight: var(--font-weight-bold); }

a { color: var(--color-jeangrey-3); }

main {
	animation: fadeInAnimation ease 2s;
	text-align: center;
}

input {
	font-size: inherit;
	font-weight: inherit;
}

@media screen and (min-width: 601px) {
	h1 span { display: block; }
}

@media screen and (min-width: 768px) {
	h1, h2 {
		font-size: 31px;
		letter-spacing: -.5px;
		line-height: 35px;
	}
}

@media screen and (min-width: 1024px) {
	h1, h2 {
		font-size: 41px;
		letter-spacing: -.5px;
		line-height: 45px;
	}
}

/* =NAV
-------------------------------------------*/

nav {
	background-color: #000;
	border-bottom: 2px solid var(--color-jeangrey-6);
	text-align: right;
	padding: 16px;
	width: 100%;
}

nav ul {
	display: flex;
	gap: 8px;
	justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
}

nav li {
	margin: 0;
	padding: 0;
}

nav a {
	border: 2px solid var(--color-jeangrey-5);
	border-radius: 999px;
	color: var(--color-jeangrey-2);
	display: block;
	font-size: 16px;
	padding: 12px 16px;
}

nav a:hover, nav a:focus {
	color: var(--color-jeangrey-2);
	transition: color 0.5s ease;
}

nav li.login a {
	background-color: var(--color-jeangrey-5);
	border-color: var(--color-jeangrey-5);
}

/* =LOGO
-------------------------------------------*/

header {
	margin: 0 auto 32px auto;
	padding-top: 32px;
}

header img {
	height: 96px;
	width: 96px;
}

@media screen and (min-width: 768px) {
	header img {
		height: 120px;
		width: 120px;
	}
}

@media screen and (min-width: 1024px) {
	header { padding-top: 96px; }
	header img {
		height: 160px;
		width: 160px;
	}
}



/* =INTRO
-------------------------------------------*/

#intro {
	margin: 0 auto 48px auto;
	max-width: 400px;
	padding: 0 16px;
}

#intro h2 { margin-bottom: 40px; }

@media screen and (min-width: 1024px) {
	#intro { max-width: 550px; }
}

/* =SIGNUP
-------------------------------------------*/

section.signup {
	margin: 0 auto 96px auto;
	padding: 0 16px;
	width: 100%;
}

#signup-bottom { margin-bottom: 72px; }

section.signup form {
	background-color: var(--color-jedi);
	border-radius: 8px;
	margin: 0 auto;
	padding: 0 4px 4px 4px;
	max-width: 800px;
	width: 100%;
}

input[type=email] {
	border-radius: 4px;
	color: var(--color-sith);
	font-weight: var(--font-weight-regular);
	padding: 8px;
	text-align: center;
	width: 100%;
	-webkit-appearance: none;
}

input[type=email]::placeholder {
	color: var(--color-jeangrey-2);
}

input[type=submit] {
	background-color: var(--color-sith);
	border-radius: 4px;
	color: var(--color-jedi);
	font-weight: var(--font-weight-semibold);
	padding: 8px;
	width: 100%;
	-webkit-appearance: none;
}

@media screen and (min-width: 550px) {
	section.signup { padding: 0 32px; }
	section.signup form {
		border-radius: 999px;
		display: flex;
		padding-top: 4px;
		max-width: 600px;
	}
	input[type=email], input[type=submit] { font-size: 19px; }
	input[type=email] {
		border-radius: 999px;
		flex-grow: 2;
		padding-left: 20px;
		text-align: left;
		width: auto;
	}
	input[type=submit] {
		border-radius: 999px;
		flex-grow: 1;
		padding: 16px 24px;
		width: auto;
	}
}

/* =SOON
-------------------------------------------*/

#soon {
	color: var(--color-jeangrey-3);
	margin: 0 auto 64px auto;
	padding: 0 16px;
}

#soon p {
	font-size: 25px;
	letter-spacing: -.5px;
	line-height: 32px;
}

@media screen and (min-width: 768px) {
	#soon p {
		font-size: 25px;
		letter-spacing: -.5px;
		line-height: 32px;
	}
}

@media screen and (min-width: 1024px) {
	#soon { margin-bottom: 96px; }
	#soon p {
		font-size: 31px;
		letter-spacing: -.5px;
		line-height: 35px;
	}
}

/* =FEATURE IMAGE
-------------------------------------------*/

#samples {
	/*border: 1px solid red;*/
	margin: 0 auto 64px auto;
	max-width: 1500px;
	text-align: center;
	width: 100%;
}

#samples > div {
	margin: 0;
	width: 100%;
}

#samples img {
	/*border: 1px solid blue;*/
	margin: 0;
	width: 100%;
}

#samples-between {
	padding: 120px 0;
}

#samples-misc {
	/*border: 1px solid red;*/
	font-size: 25px;
	font-weight: var(--font-weight-regular);
	line-height: 28px;
	list-style: none;
	margin: 0 auto;
	padding: 0 16px;
	max-width: 800px;
}

#samples-misc li {
	border-bottom: 4px solid var(--color-jeangrey-6);
	margin-bottom: 48px;
	padding-bottom: 48px;
}

#samples-misc li:last-child {
	border-bottom-width: 0;
	margin-bottom: 0;
	padding-bottom: 0;
}

@media screen and (min-width: 768px) {
	#samples-misc {
		font-size: 31px;
		letter-spacing: -.5px;
		line-height: 35px;
		margin-bottom: 120px;
	}
}

@media screen and (min-width: 1024px) {
	#samples-misc {
		font-size: 41px;
		letter-spacing: -.5px;
		line-height: 45px;
	}
}

@media screen and (min-width: 768px) {
	#samples { margin-bottom: 120px; }
	#samples img { margin-bottom: 0; }
	#samples-misc { margin-bottom: 0;  }
}

@media screen and (min-width: 1024px) {
	#samples { margin-bottom: 120px; }
}

/* =OLD JOBS
-------------------------------------------*/

#old-jobs {
	margin: 0 auto 64px auto;
	max-width: 900px;
	padding: 0 16px;
}

#old-jobs p {
	border-bottom: 2px solid var(--color-jedi);
	margin: 0;
	padding-bottom: 24px;
}

#logo-parade {
	border-bottom: 2px solid var(--color-jedi);
	padding: 40px 0;
	position: relative;
	text-align: center;
	width: 100%;
}

#logo-parade img {
	display: block;
	height: auto;
	margin: 0 auto;
	position: relative;
	width: 80%;
}

@media screen and (max-width: 767) {
	#logo-parade img { max-width: 400px; }
}

@media screen and (min-width: 768px) {
	#old-jobs { margin-bottom: 120px; }
	#old-jobs p {
		font-size: 25px;
		letter-spacing: -.5px;
		line-height: 32px;
		padding-bottom: 40px;
	}
	#logo-parade img { max-width: 700px; }
}

@media screen and (min-width: 1024px) {
	#old-jobs p {
		font-size: 31px;
		letter-spacing: -.5px;
		line-height: 35px;
	}
	#logo-parade { padding: 80px 0; }
}

/* =CONTACT
-------------------------------------------*/

section#contact {
	color: var(--color-jeangrey-3);
	margin: 0 auto 64px auto;
	padding: 0 16px;
	text-align: center;
}

#contact p { margin-bottom: 12px; }

#contact a {
	color: var(--color-jedi);
	font-weight: var(--font-weight-semibold);
}

@media screen and (min-width: 768px) {
	#contact p {
		font-size: 25px;
		letter-spacing: -.5px;
		line-height: 32px;
	}
}

@media screen and (min-width: 1024px) {
	#contact p {
		font-size: 31px;
		letter-spacing: -.5px;
		line-height: 35px;
	}
}

/* =TEXT PAGES
-------------------------------------------*/

body.text main {
	border-bottom: 4px solid var(--color-jeangrey-3);
	margin: 0 auto 160px auto;
	max-width: 800px;
	padding: 0 16px 24px 16px;
	text-align: left;
}

body.text main section {
	text-align: left;
}

body.text main h1 { text-align: center; }

body.text main h2 {
	border-bottom: 4px solid var(--color-jeangrey-3);
	font-size: 25px;
	line-height: 28px;
	margin: 48px 0;
	padding: 0 0 8px 0;
}

body.text main h3 {
	font-size: 19px;
	margin-bottom: 8px;
}

body.text main p {
	color: var(--color-jeangrey-3);
	margin-bottom: 40px;
}

body.text main a {
	text-decoration: underline;
}

/* =BLOG
-------------------------------------------*/

body.blog main article {
	margin-bottom: 120px;
}

body.blog main article h2 {
	border-bottom-color: var(--color-jedi);
	color: var(--color-jedi);
	margin-bottom: 8px;
}

body.blog main h3 { margin-bottom: 24px; }

body.blog main article a { color: var(--color-jedi); }

body.blog main article p { 
	color: var(--color-jeangrey-2);
}

body.blog main article p.date {
	color: var(--color-jeangrey-3);
	font-weight: var(--font-weight-bold);
}

body.blog main article ul { 
	color: var(--color-jeangrey-2);
	font-size: 19px;
	list-style: none;
	margin: 0 0 48px 0;
}

body.blog main article ol { 
	color: var(--color-jeangrey-2);
	font-size: 19px;
	margin: 0 0 48px 24px;
}

body.blog main article li {
	border-bottom: 2px solid var(--color-jeangrey-5);
	margin-bottom: 16px;
	padding: 0 0 16px 0;
}

body.blog main article li:last-child {
	border-bottom-width: 0;
	margin: 0;
	padding: 0;
}

body.blog main article blockquote {
	border-left: 4px solid var(--color-jeangrey-4);
	color: var(--color-jeangrey-2);
	font-size: 19px;
	font-style: italic;
	margin: 0 0 40px 0;
	padding: 12px 0 12px 20px;
}

body.blog main article blockquote p { margin-bottom: 24px; }

body.blog main article blockquote p:last-child { margin: 0; }

body.blog main article img {
	border: 2px solid var(--color-jeangrey-4);
	border-radius: 8px;
	margin: 0 0 24px 0;
	padding: 2px;
	max-width: 800px;
	width: 100%;
}

body.blog #pager  {
	display: flex;
	justify-content: space-between;
}

body.blog #pager a {
	background-color: var(--color-jeangrey-6);
	border-radius: 999px;
	color: var(--color-jeangrey-2);
	display: block;
	font-size: 16px;
	font-weight: var(--font-weight-semibold);
	padding: 14px 20px;
	text-decoration: none;
	text-transform: uppercase;
}

/* =ALL THE LITTLE THINGS THAT KILL
-------------------------------------------*/

p.button-download { margin-bottom: 120px; }

@media screen and (max-width: 768px) {
	p.button-download img { max-width: 168px; }
}

#seal {
	margin-bottom: 64px;
}

#seal img {
	height: 200px;
	width: 200px;
}

p.copyright {
	color: var(--color-jeangrey-3);
	margin-bottom: 16px;
	opacity: 75%;
	padding: 0 24px;
}

p.legal {
	color: var(--color-jeangrey-3);
	margin-bottom: 64px;
	opacity: 75%;
	padding: 0 24px;
}

p.legal span {
	color: var(--color-jeangrey-4);
	padding: 0 8px;
}

@media screen and (max-width: 768px) {
	p.copyright, p.legal { font-size: 15px; }
}

span.subtext {
		color: var(--color-jeangrey-4);
		font-size: 75%;
}

.cute { font-weight: var(--font-weight-light); }


