:root {
	--white: rgba(238, 238, 238, 1);
	--gold: rgba(255, 230, 121, 1);
	--pine-green: rgba(30, 105, 35, 1);
	--apple-green: rgba(30, 155, 25, 1);
	--chartreuse: rgba(127, 255, 0, 0.85);
	--yellow: rgba(255, 221, 0, 1);
	--light-grey: rgba(60, 60, 60, 0.8);
	--cherry-red: rgba(138, 50, 45, 0.85);
	--light-lake-blue: rgba(54, 139, 186, 1);
	--lake-blue: rgba(30, 78, 105, 1);
}

* {
	box-sizing: border-box;
}

body {
	position: relative;
	margin: 0;
	padding: 1.5em 0 4em;
	background-color: var(--lake-blue);
}

.site-header {
	display: block;
	text-align: center;
	padding: 1.5rem 1rem;
}

.site-header nav a {
	display: block;
	text-align: center;
	margin: .2em 0;
}

.hidden {
	display: none;
}

.hello-block {
	/*opacity: 1;*/
	/*animation: fade-in .5s cubic-bezier(0.2, 0.8, 0.4, .9);*/
}

.fade-out {
	opacity: 0;
	animation: fade-out .5s cubic-bezier(0.2, 0.8, 0.4, .9);;
}

.fade-in {
	/*opacity: 0;*/
	animation: fade-in .5s cubic-bezier(0.2, 0.8, 0.4, .9);;
}

.big-button {
	padding: 8px 20%;
	color: var(--yellow);
	background-color: var(--cherry-red);
	border: 0.05em solid;
	border-radius: 5px;
	transition: color .3s, background-color .3s;
	font-size: 1.2em;
	font-family: 'Lato', monospace;
	font-weight: 700;
	text-decoration: none;
	webkit-text-decoration: none;
	animation: fade-in-yellow .5s cubic-bezier(0.2, 0.8, 0.4, .9);
}

/*.big-button {
	padding: 4px 15%;
	color: var(--yellow);
	border: 0.05em solid;
	border-radius: 5px;
	transition: color .3s, background-color .3s;
	font-size: 1.1em;
	font-family: 'Lato', monospace;
	font-weight: 400;
	text-decoration: none;
	webkit-text-decoration: none;
	animation: fade-in-yellow .5s cubic-bezier(0.2, 0.8, 0.4, .9);
}*/

input, textarea {
	display: flex;
	flex-direction: column;
	width: 75%;
	border-radius: 4px;
	outline: none;
}

h1 {
	text-align: center;
	color: var(--white);
	font-weight: 800;
	font-family: 'Roboto', sans-serif;
	font-size: 1.8em;
}

h2 {
	color: var(--white);
	border: .2rem solid var(--light-lake-blue);
	border-radius: 5px;
	padding: .2rem .5rem;
}

main {
	font-family: 'Raleway', sans-serif;
	font-weight: 500;
	font-size: 1em;
	padding: 0 2vw;
}

/* Tailoring the page for desktop screens */
@media screen and (min-width: 440px) {
	body {
		padding: 0 0 3em;
	}

	main {
		font-size: 1.35em;
		margin: 0 1em;
	}

	.nav-button {
		padding: 8px 45px;
	}

	.big-button {
		padding: 4px 35px;
	}

	nav a.nav-menu {
		display: none;
	}

	.site-header {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
	}

	.site-header nav a {
		display: inline-flex;
	}

	.card {
		padding: 0 1.2em 1em;
	}

	.social img {
		max-width: 64px;
		margin: 0 1.2em;
	}

}

@media (min-width: 724px) {
	main {
		font-size: 1.45em;
	}
}

.side-margin {
	margin: 0 5px;
}

.site-footer {
	position: fixed;
	bottom: 0;
	padding: 8px 0;
	width: 100%;
	background-color: var(--light-grey);
	text-align: right;
}

.footer-text {
	text-align: right;
	color: var(--white);
	font-family: 'Roboto', sans-serif;
	padding-right: .5em;
}

.container {
	display: flex;
	flex: 2 1 400px;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
}

.card {
	margin: 0 0 25px;
	padding: 0 0.8em 0.7em;
	border-radius: 15px;
	color: rgba(0, 0, 0, 1);
	align-self: center;
	box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
	transition: box-shadow .3s;
	max-width: 650px;
}

.card:hover {
	box-shadow: 0 13px 13px rgba(0, 0, 0, 0.3);
}

.logo {
	display: inline-block;
}

img.circle-crop {
	object-fit: none;
	object-position: 55% 10%;
	border-radius: 50%;
	height: 240px;
	width: 240px;
	align-self: center;
}

img.squircle-crop {
	object-fit: cover;
	border-radius: 8px;
	height: 240px;
	width: 300px;
	justify-content: center;
}

.social {
	display: flex;
	flex-direction: row;
	justify-content: center;
}

.social img {
	max-width: 32px;
	margin: 0 1em;
}

.content {
	line-height: 1.3;
	overflow-wrap: break-word;
	color: var(--white);
}

.content a {
	/*color: var(--apple-green);*/
	text-decoration-line: none;
	webkit-text-decoration-line: none;
} 

.content a:hover {
	/*color: var(--chartreuse);*/
}

input {
	margin-bottom: 10px;
}

.msg-text {
	width: 45.5em;
	height: 10.1em;
}

.color-bloom {
	background-color: inherit;
}

.color-bloom:hover {
	background-color: var(--gold);
	color: var(--lake-blue);
}

.grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
	grid-template-rows: auto;
	grid-column-gap: 2em;
}

.gold {
	background: var(--gold);
	color: black;
}

.bg-light-lake-blue {
	background: var(--light-lake-blue);
}

.bg-cherry-red {
	background: var(--cherry-red);
}

.bg-cherry-red a {
	color: var(--gold);
}

.bg-pine-green {
	background: var(--pine-green);
	color: var(--white) !important;
}

@keyframes fade-in-yellow {
	0% {
		color: rgba(255, 221, 0, 0);
	}

	100% {
		color: var(--yellow);
	}
}

@keyframes fade-in {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

@keyframes fade-out {
	0% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}