/* Variables */
:root {
	/* Colors */
	--text: #1E2534;
	--accent1: #a4fc7c;
	--accent1-dark: #f8ffac;
	--accent2: #deb9fc;
	--accent2-dark: #a374d3;
	--bg: #ffdada;
	--bg-light: #ff8400;

	/* Margins */
	--margin-outside: 1rem;
	--margin-bottom: 3rem;

	@media screen and (min-width: 850px) {
		--margin-outside: 4rem;
		--margin-bottom: 6rem;
	}	

	/* Max-Width */
	--max-width: 80rem;
}


/* Global */
body {
	font-family: "PT Sans", sans-serif;
	color: var(--text);
	background-color: var(--bg);
}
.button {
	font-size: 1.125rem;
	text-decoration: none;
	border: var(--text) 1px solid;
	border-radius: .5rem;
	padding: .5rem 1.5rem;
	background-color: var(--accent2);
	font-weight: bold;
}

/* Font Sizes */
html {
	@media screen and (min-width: 1100px) {
		font-size: 1.1rem;
	}
	@media screen and (min-width: 1200px) {
		font-size: 1.2rem;
	}
}


/* Header */
.site-header {
	position: relative;
	margin-top: 1rem;
	margin-left: var(--margin-outside);
	margin-right: var(--margin-outside);
	margin-bottom: var(--margin-bottom);

	@media screen and (min-width: 850px) {
		margin-top: 3rem;
		display: grid;
		grid-template-columns: 1fr auto;

		max-width: var(--max-width);
		margin-left: auto;
		margin-right: auto;
		padding-left: var(--margin-outside);
		padding-right: var(--margin-outside);
	}
}
.site-logo {
	font-size: 1.875rem;
	font-family: "Changa One", cursive;
}
.site-nav {
	margin-top: 2rem;
	@media screen and (min-width: 850px) {
		margin-top: 0;
	}
}
.site-nav__links {
     display: none;

	@media screen and (min-width: 850px) {
		display: flex;
	}

	li {
		margin-bottom: .5rem;
	}
	a {
		font-size: 1.125rem;
		text-decoration: none;
		display: block;
		border: var(--text) 1px solid;
		border-radius: .5rem;
		padding: .5rem;
		text-align: center;

		@media screen and (min-width: 850px) {
			border-radius: 0;
			padding-left: 1rem;
			padding-right: 1rem;
			border-right-width: 0;
		}
		&:hover{
		    color: var(--accent1);
			background-color: var(--bg-light);
		}
	}
	li:first-child a {

		@media screen and (min-width: 850px) {
			border-top-left-radius: .5rem;
			border-bottom-left-radius: .5rem;
		}
	}
	li:last-child a {

		@media screen and (min-width: 850px) {
			border-top-right-radius: .5rem;
			border-bottom-right-radius: .5rem;
			border-right-width: 1px;
		}
	}
	.active {
		font-weight:lighter;
	}
}


.site-nav__links {
       display: none;
	   
	   @media screen and (min-width: 850px) {
		display: flex !important ;
	}

	.show-menu & {
		display: block;
		animation: move-in0from-top .4s ease-out;
	}
}

@keyframes move-in0from-top{
	from {
		transform: translateY(-20%);
		opacity: 0;
	}
	to {
		transform: translateY(0);
		opacity: 1;
	}
}

.site-nav__links{
	display:none;
	
}
.show-menu .site-nav__links{
	display: block;
}


.site-nav__button {
	position: absolute;
	top: -.25rem;
	right: 0;
	border: var(--text) 1px solid;
	border-radius: .5rem;
	padding: .75em;
	transition: background-color .3s, font-size 1s;

	.show-menu & {
         background-color: var(--accent1);
		
		 svg {
            rotate: 180deg;
		}
	}

	@media screen and (min-width: 850px) {
		display: none;
	}

	svg {
		display: block;
		transition: rotate .3s;
	}
	&:hover {
         background: var(--accent1-dark);
		 color: white;
	}
	
}

 * {
	transition: opacity .3s;
 }
 .show-menu *:not( .site-header, .site-header *) {
	opacity: .5;
 }

/* Wrapper */
.wrapper {
	@media screen and (min-width: 850px){
	max-width: var(--max-width);
	margin-left: auto;
	margin-right: auto;
	}
}


/* Hero */
.hero {
	background: linear-gradient(-45deg, var(--accent2), var(--accent2-dark));
	padding: 1rem 1rem 0 1rem;
	margin-bottom: var(--margin-bottom);

	@media screen and (min-width: 850px) {
		margin-left: var(--margin-outside);
		margin-right: var(--margin-outside);
		padding-top: 2.5rem;
		border-radius: 1rem;
		display: grid;
		grid-template-columns: 1fr 1fr;
		align-items: center;
	}
}
.hero__header {
	font-size: 3rem;
	font-family: "Changa One", cursive;
	margin-bottom: 2rem;
	text-align: center;
	line-height: 1;
	letter-spacing: -0.09rem;

	@media screen and (min-width: 850px) {
		order: 100;
		font-size: 5rem;
		text-align: left;
	}

	em {
		font-style: normal;
		color: var(--bg);
	}
}
.hero__image {
	display: block;
	width: 100%;
		max-width: 25rem;
	margin-left: auto;
	margin-right: auto;
	animation: rotate-this 10s ease-in-out infinite;
	
	@media screen and (min-width: 850px) {
		margin: 0;
		justify-self: right;
	}
}
@keyframes rotate-this {
	from {
       transform: rotate3d(1, 1, 1, 0deg);
	}
	to {
		transform: rotate3d(1, 1, 1, 360deg);
	}
}

/* Quote */
.quote {
	margin-left: var(--margin-outside);
	margin-right: var(--margin-outside);
	margin-bottom: var(--margin-bottom);
	text-align: center;	
}
.quote__text {
	font-size: 1.5rem;
	
	@media screen and (min-width: 850px) {
		font-size: 1.75rem;
		max-width: 40ch;
		margin-left: auto;
		margin-right: auto;
	}
}
.quote__attribution {
	margin-top: .5rem;
	font-size: 1.25rem;

	@media screen and (min-width: 850px) {
		font-size: 1.5rem;
	}	
}


/* Cards */
.cards {
	margin-left: var(--margin-outside);
	margin-right: var(--margin-outside);
	margin-bottom: var(--margin-bottom);
}
.cards__header {
	font-size: 1.5rem;
	margin-bottom: 2rem;
	text-transform: uppercase;
	text-align: center;
	font-weight: bold;
	color: var(--accent1-dark);
}
.cards__wrapper {
	display: grid;
	gap: 2rem;

	@media screen and (min-width: 850px) {
		grid-template-columns: repeat(3, 1fr);
		gap: 3rem
	}
}
.card {
	background-color: var(--bg-light);
	border-radius: 0.5rem;
	box-shadow: 4px 4px 16px 0px rgba(30, 37, 52, 0.10);
}
.card__link {
	padding: 1.5rem;
	text-decoration: none;
	text-align: center;
	display: block;
}
.card__image {
	background-color: var(--accent1);
	margin: 0 auto 1.5rem;
	width: 10rem;
	height: 10em;
	padding: 1.5rem;
	border-radius: 50%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5rem;	

	img {
		display: block;
		width: 100%;
		mix-blend-mode: multiply;
	}
}
.card__header {
	font-size: 1.25rem;
	margin-bottom: .5rem;
	text-transform: uppercase;
	font-weight: bold;
}
.card__text {
	line-height: 1.35;
}


/* Mailing List */
.mailing-list {
	margin-left: var(--margin-outside);
	margin-right: var(--margin-outside);
	margin-bottom: var(--margin-bottom);
	text-align: center;
}


/* Footer */
.site-footer {
	background-color: var(--text);
	color: var(--bg);
	
	p {
		padding: 3rem var(--margin-outside);

		max-width: var(--max-width);
		margin-left: auto;
		margin-right: auto;
	}
}