*,
::after,
::before {
	box-sizing: border-box;
	padding: 0;
	margin: 0;
	background: 0 0;
	text-decoration: none;
	outline: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	font-weight: inherit;
	color: inherit;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale
}



:root {
	--bg: #fffcf2;
	--bg-light: #fffef9;
	--bg-alt: #fff;
	--c-title: #252422;
	--text: #403d39;
	--c-text-alt: #4d4839;
	--c-link: #eb5e28;
	--c-brand: #eb5e28;
	--c-mark: rgba(#eb5e28, 0.1);
	--c-detail: #eeeade;
	--c-borders: #ece7d3;
	--font-family: "Courier New";
	--font-size: 14px;
	--font-line-height: 24px;
	--font-style: normal;
	--type-base: 14px;
	--type-base-alt: 16px;
	--type-s: 11px;
	--type-s-alt: 13px;
	--type-m: 22px;
	--type-l: 26px;
	--type-xl: 31px;
	font-size: var(--font-line-height);
	font-family: var(--font-family);
	font-style: var(--font-style);
	background: var(--bg);
	color: var(--text)
}

@media (min-width:500px) {
	:root {
		--type-base: 15px;
		--type-base-alt: 17px;
		--type-s: 12px;
		--type-s-alt: 14px;
		--font-size: 15px;
		--font-line-height: 25px
	}
}

body {
	font-size: var(--type-base);
	line-height: var(--font-line-height);
	justify-content: center
}

body,
html {
	overflow: auto;
    scroll-behavior: smooth;
}

header a,
header em,
p a {
	font-family: var(--font-family);
	color: var(--c-brand);
	line-height: 1rem;
}

p a {
	font-size: var(--type-base-alt);
	text-decoration: none;
    text-decoration-style: dashed;
	text-decoration-thickness: 1px;
	transition: color 200ms ease-out
}

p a:hover {
	color: var(--c-text)
}

main {
	padding: 0 1rem
}

h1 {
	font-size: var(--type-l);
	letter-spacing: -.01em
}

.signup,
h1,
h2,
p {
	max-width: 32rem;
    max-width: 90%;
}

h1,
h2 {
	margin: 20px auto 1.5rem;
	line-height: 1.5rem
}

h2 {
	font-size: var(--type-m);
	text-align: left;
}

h1 {
    margin-top: 150px;
    text-align: center;

}

.signup,
p {
	margin: 0 auto
}

header,
p {
	font-family: "Courier New";
}

p {
	line-height: 28px;
	font-size: 17px;
    margin-top: 15px;
}

header {
	font-size: var(--type-s);
	line-height: 1rem;
	height: 1rem;
	font-weight: 440;
	margin: 1rem auto 4rem
}

header a,
header em {
	font-size: var(--type-s-alt)
}

.signup {
	width: 100%
}

.signup-notice,
header {
	display: block;
	text-align: center
}

.signup-notice {
	margin-top: .5rem;
	opacity: .5;
	font-family: "Sentient";
	font-style: italic;
	font-size: 13px;
	font-weight: 350
}

.archive {
	margin: 2rem auto;
	max-width: 20rem;
	display: flex;
	flex-direction: column;
	gap: 1px
}

.archive-item {
	display: grid;
	grid-template-columns: 1fr auto;
	grid-template-areas: "title date""website website";
	padding: .5rem 1rem;
	border-bottom: none;
	transition-duration: 200ms;
	transition-property: transform, background, outline, box-shadow;
	transition-timing-function: ease-out;
	outline: 1px solid var(--c-borders);
	background: var(--bg-light);
	box-shadow: transparent 0 1px 3px 0, transparent 0 1px 2px 0
}

.archive-item:hover {
	background: #fff;
	outline: 1px solid var(--c-brand);
	z-index: 1;
	box-shadow: rgba(0, 0, 0, .1)0 1px 3px 0, rgba(0, 0, 0, .06)0 1px 2px 0;
	transform: scale(1.02)
}

.archive-item:nth-child(1) {
	border-radius: 5px 5px 0 0
}

.archive-item:last-child,
.archive-item:nth-child(5) {
	border-radius: 0 0 5px 5px
}

.archive-item:nth-child(n+6) {
	display: none
}

.show-interviews .archive-item:nth-child(5) {
	border-radius: 0
}

.show-interviews .archive-item:nth-child(n+6) {
	display: grid
}

.show-interviews button.button {
	display: none
}

.archive-name {
	grid-area: title;
	line-height: 1rem;
	font-size: var(--type-base-alt)
}

.archive-site {
	grid-area: website;
	color: var(--c-brand);
	font-family: "Courier New";
}

.archive-date {
	grid-area: date;
	font-style: italic;
	opacity: .75
}

.button {
	margin: 1rem auto 2rem;
	display: block;
	width: -webkit-min-content;
	width: -moz-min-content;
	width: min-content;
	padding: .5rem 1rem;
	white-space: nowrap;
	font-family: "Courier New";
	font-size: var(--type-s);
	text-transform: uppercase;
	font-weight: 500;
	border: 1px solid var(--c-brand);
	border-radius: 5px;
	letter-spacing: .03em;
	background: var(--c-brand);
	cursor: pointer;
	color: var(--bg);
	transition: all 200ms ease-out
}

.button:hover {
	background: var(--text);
	border: 1px solid var(--text)
}

.supporters-list {
	display: flex;
	flex-direction: column
}

.support {
	margin-top: 3rem;
	border-top: 1px solid var(--c-borders);
	background: #fff;
	padding: 3rem 1rem
}

.supporters {
	margin: 2rem auto;
	max-width: 20rem;
	gap: 1px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	padding: 1px
}

@media (min-width:730px) {
	.supporters {
		grid-template-columns: repeat(3, 1fr);
		max-width: 28rem
	}
}

@media (min-width:950px) {
	.supporters {
		grid-template-columns: repeat(4, 1fr);
		max-width: 36rem
	}
}

.supporter,
form {
	display: grid;
	grid-template-columns: 1fr
}

.supporter {
	grid-template-areas: "title""website";
	padding: .5rem 1rem;
	border-bottom: none;
	transition: all 200ms ease-out;
	background: var(--bg-light);
	outline: 1px solid var(--c-borders)
}

a.supporter:hover {
	background: #fff;
	outline: 1px solid var(--c-brand);
	z-index: 1;
	transform: scale(1.02)
}

a.supporter:hover .supporter-site {
	color: var(--c-brand)
}

div.supporter {
	cursor: not-allowed
}

.supporter-name {
	grid-area: title;
	line-height: 1rem;
	font-size: var(--type-s-alt)
}

.supporter-site {
	font-size: var(--type-s-alt);
	grid-area: website;
	font-style: italic;
	opacity: .75;
	transition: opacity 200ms ease-out, color 200ms ease-out
}

form {
	margin: 2rem auto;
	gap: 0;
	max-width: 20rem;
	font-family: "Courier New";
	line-height: 25px
}

@media (min-width:430px) {
	form {
		grid-template-columns: 1fr auto
	}
}

label {
	position: absolute;
	top: -9999px;
	left: -9999px
}

input[type=email] {
	cursor: pointer
}

input[type=email],
input[type=submit] {
	border: 1px solid #ece7d3;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: calc(.5rem - 1px) 1rem;
	transition-duration: 200ms;
	transition-property: border, background, color
}

input[type=email] {
	background: var(--bg);
	border-radius: 5px 5px 0 0;
	background: var(--bg-light);
	font-size: var(--type-base)
}

@media (min-width:430px) {
	input[type=email] {
		border-radius: 5px 0 0 5px
	}
}

input[type=email]:focus {
	background: #fff;
	border-color: var(--c-brand)
}

input[type=submit] {
	text-transform: uppercase;
	font-size: var(--type-s);
	font-weight: 500;
	border: 1px solid var(--c-brand);
	border-radius: 0 0 5px 5px;
	letter-spacing: .03em;
	background: var(--c-brand);
	cursor: pointer;
	color: var(--bg)
}

@media (min-width:430px) {
	input[type=submit] {
		border-radius: 0 5px 5px 0
	}
}

input[type=submit]:hover {
	background: var(--text);
	border: 1px solid var(--text)
}