/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

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,
fieldset, form, label, legend, ul, li, ol,
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 {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/**********************************************
Master Layout
************************************************/

html {
	scroll-behavior: smooth;
}

main {
	margin: 10% auto;
}

img {
	width: 100%;
}

/************************************
COLORS
**************************************/
html {
	color: #393939;

	--c-drkPrpl: #0f0825;
	--c-gold: #ffc001;
	--c-blue: #6284f7;
	--c-orange: #ec7802;
	--c-goldLght: #f3efd3;

	--c-offWhite: #f6f7f9;
}

/************************************
Typography
**************************************/

body {
	font-size: 16px;
}

html { 
	--font-primary: "Roboto Slab", serif;;
	--font-secondary: "PT Sans", sans-serif;
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-primary);
}

h1 {
	font-size: 3.4em;
	line-height: 1.5;
	text-transform: capitalize;
}

h2 {
	font-size: 2.75em;
	line-height: 1.4;
	padding-bottom: .7em;
	font-weight: 700;
}

h3 {
	font-size: 2em;	
	line-height: 1.5;
}

p {
	font-family: var(--font-secondary);
	font-size: 1.2em;
	line-height: 1.6;
	color: #232323;
}

a {
	text-decoration: none;
	font-family: var(--font-secondary);
}

strong {
	font-weight: 700;
}

ul {
	margin: 1rem 0;
}

li {
	font-family: var(--font-primary);
	margin-left: 2.5rem;
	line-height: 1.5;
}

/*****************************************
QUOTE CONTAINER
*******************************************/

.quote-container {
	display: flex;
	align-items: center;
	padding: 80px;
}

blockquote {
    padding-left: 30px;
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    margin: 0;
    line-height: 1;
}

blockquote p {
	font-size: 1.1em;
	font-weight: 300;
}

/********************************************
top & summary
********************************************/

#top {
	background: linear-gradient(35deg, #ccffff, #ffcccc);
	position: fixed;
	display: flex;
	font-size: 13px;
	line-height: 1.3;
	bottom: 6%;
	right: 3%;
	height: 55px;
	width: 55px;
	border-radius: 8px;
	text-align: center;
	align-items: center;
	color: black;
	z-index: 1;
	box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.1), 0 4px 18px 0 rgba(0, 0, 0, 0.1);
}

@media screen and (min-width: 840px) {
	#top {
		height: 75px;
		width: 75px;
		font-size: 16px;
	}
	#top:hover {
		transition: 200ms ease-in;
		box-shadow: none;
	}
	#top:active {
		box-shadow: inset 0px 0px 7px #c1c1c1;
	}

}

.progress-bar {
	height: 100%;
	width: 1%;
	background-color: var(--c-gold);
	position: fixed;
}

#summary {
	position: fixed;
	width: 90%;
	height: 90%;
	text-align: center;
	top: 15%;
}
.summary-text{
	width: 100%;
	position: fixed;
	text-align: center;
	color: #232323;
	height: 40%;
}
.summary-text h1 {
	font-size: 2.5em;
	padding: 1.4em .5em;
}
#summary p {
	color: #232323;
}
@media screen and (min-width: 800px) {
	#summary {
		top: 0;
		width: 100%;
		height: 100%;
		padding: 0;
	}
	.summary-text {
		top: 30%;
	}
	.summary-text h1 {
		font-size: 5em;
		padding: .5em;
	}

	#summary p {
		font-size: 1.6em;
		letter-spacing: 1px;
	}
}

.bounce {
	position: relative;
	animation-name: bounce;
	margin: 0 auto;
	animation-duration: 1.5s;
	animation-iteration-count: infinite;
	text-align: center;
}

@keyframes bounce {
	0% {
	  top: 0px;
	}

	50% {
	  top: 70px;
	  height: 1px;
	}

	100% {
	  top: 0px;
	}
}

/*******************************************
PART ONE STYLES
*******************************************/

.part-1 {
	padding: 15% 5%;
	position: fixed;
	max-width: 60%;
}

.part-1 h2 {
	padding-bottom: .5em;
	font-size: 32px;
}

.part-1 h3 {
	font-size: 24px;
	padding-bottom: .5em;
}

.part-1 p {
	font-size: 16px; 
}

.bounce-cloud {
	animation-name: bounceCloud;
	position: fixed;
	animation-duration: 1.8s;
	animation-iteration-count: infinite;
}

@keyframes bounceCloud {
	0% {
	  top: 0px;
	}

	50% {
	  top: 10px;
	  height: 1px;
	}

	100% {
	  top: 0px;
	}
}

.part-1-img {
	position: fixed;
	right: 2%;
	z-index: -1;
}

.max-width {
	max-width: 100%;
}

#dirt, #tarp, #apple-tree {
	display: none;
}

#mobile-apple {
	max-width: 50%;
	padding: 1em;
}

.silk-tree {
	display: none;
}

@media screen and (min-width: 700px) {
	#mobile-dirt, #mobile-tarp, #mobile-apple {
		display: none;
	}

	.silk-tree {
		position: fixed;
		display: block;
		z-index: 0;
	}
	.part-1, .max-width {
		max-width: 50%;
	}

	#dirt, #tarp, #apple-tree {
		display: block;
		max-width: 40%;
	}
	
}

@media screen and (min-width: 1000px) {
	.part-1 h2 {
		font-size: 3em;
	}

	.part-1 h3 {
		font-size: 2.5em;
	}

	.part-1 p {
		font-size: 1.3em;
	}
}

/**********************************************
PART 2 - PESTS & COLD SNAP
**********************************************/

.part-2, .part-3 {
	padding: 15% 5%;
	position: fixed;
	width: 85%;
	margin: 0 auto;
}

.part-2 h2 {
	padding-bottom: .4em;
}

.caterpillar {
	font-size: 16px;
}

.next-page {	
	display: grid;
	grid-template-rows: 1fr 1fr;
}

.next-page p {
	align-self: end;
	font-size: 1.7em;
}

.next-page h2 {
	font-size: 7em;
}

#fly {
	text-align: center;
	font-size: 90%;
}

.part-2-img {
	position: fixed;
	z-index: -1;
}

@media screen and (min-width: 900px) {
	.next-page {
		left: 30%;
	}
	.part-2 {
		padding: 5% 2%;
		max-width: 50%;
	}
	.part-2 h2 {
		font-size: 4em;
	}
	.next-page h2 {
		font-size: 7em;
	}
	#freeze p, #fly p {
		font-size: 1.5em;
	}
	#fly {
		text-align: right;
	}

	#freeze {
		left: 20%;
	}
	.caterpillar {
		font-size: 1.3em;
	}
}

/**********************************************
PART 3 - PLANTING GUIDE
**********************************************/

#planting-guide p {
	font-size: 1.7em;
}

#planting-guide h2 {
	font-size: 5em;
}

@media screen and (min-width: 1000px) {
	#planting-guide {
		left: 20%;
	}
}

.month-guide, .planting-table, .seed-1, .seed-2, .seed-3, .transplant-1, .transplant-2, .transplant-3 {
	display: none;
}

.mobile-planting-guide {
	position: fixed;
}

.card {
	background-color: white;
	position: fixed;
	width: 70vw;
	padding: 5%;
}

.card h2 {
	text-transform: uppercase;
	border-bottom: 1px dashed lightblue;
}

.card h3 {
	padding-top: 1em;
}

@media screen and (min-width: 1300px) {
	
	.mobile-planting-guide, .card {
		display: none;
	}
	.planting-table {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		grid-template-rows: 1fr 1fr;
		width: 90%;
		margin: 6% 15% 0 12%;
		position: fixed;
	}
	.seed-1 {
		grid-column: 1 / span 1;
	}
	.transplant-1 {
		grid-row: 2 / span 1;
	}

	.seed-2 {
		grid-column: 2 / span 1;
	}
	.transplant-2 {
		grid-row: 2 / span 1;
		grid-column: 2 / span 1;
	}
	.seed-3 {
		grid-column: 3 / span 1;
	}
	.transplant-3 {
		grid-row: 2 / span 1;
		grid-column: 3 / span 1;
	}
	.planting-table, .seed-1, .seed-2, .seed-3, .transplant-1, .transplant-2, .transplant-3 {
		display: block;
		position: fixed;
		width: 250px;
		padding: 1%;
	}
	.month-guide {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		width: 80%;
		left: 10%;;
		top: 30px;
		height: 50px;
		position: fixed;
		text-align: center;
	}
	#early {
		grid-column: 1 / span 1;
		background-color: rgba(77, 5, 232, .75);
		width: 100%;
	}

	#mid {
		grid-column: 2 / span 1;
		background-color: rgba(77, 5, 232, .85);
		width: 100%;
	}

	#late {
		grid-column: 3 / span 1;
		background-color: rgba(77, 5, 232, 1);
		width: 100%;
	}

	#early p, #mid p, #late p {
		color: white;
		padding-top: .5rem;
		font-size: 1.6em;
		text-transform: uppercase;
		letter-spacing: 2px;
	}
}
/**********************************************
END
**********************************************/

.end {
	position: fixed;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	top: 20%;
}

.end h2 {
	font-size: 3em;
}

.end p {
	font-size: 2em;
}

.go-back, .links {
	position: fixed;
	width: 100%;
	margin: 0 auto;
	text-align: center;
}

.go-back p {
	text-transform: uppercase;
	font-size: 14px;
	letter-spacing: 2px;
	font-style: italic;
}

.end-links {
	padding: 16px 20px;
	background: linear-gradient(35deg, #ffcccc, #ccffff);
	border-radius: 6px;
	text-transform: uppercase;
	box-shadow: 0 1px 3px rgba(0,0,0,.2);
	margin: 0 10px 0px 0px;
	color: black;
	letter-spacing: 1px;
}

.end-links:hover {
		transition: 200ms ease-in;
		box-shadow: none;
		opacity: .7;
	}
	.end-links:active {
		box-shadow: inset 0px 0px 7px #c1c1c1;
		opacity: 1;
	}

@media screen and (min-width: 800px) {
	.end {
		top: 30%;
	}
	.end h2 {
		font-size: 7em;
	}
}

/************************************************
SNOWFLAKE
************************************************/

.snowflake {
  color: #fff;
  font-size: 1em;
  font-family: Arial;
  text-shadow: 0 0 1px #000;
}

@-webkit-keyframes snowflakes-fall
{
	0% {
		top:-10%
	}
	100% {
		top:100%
	}
}

@-webkit-keyframes snowflakes-shake {
	0% {
		-webkit-transform:translateX(0px);transform:translateX(0px)
	}
	50% { 
		-webkit-transform:translateX(80px);
		transform:translateX(80px)
	}
	100% {
		-webkit-transform:translateX(0px);transform:translateX(0px)
	}
}

@keyframes snowflakes-fall {
	0% {
		top:-10%
	}
	100% {
		top:100%
	}
}
@keyframes snowflakes-shake { 
	0% {
	transform:translateX(0px)
	}
	50% {
	transform:translateX(80px)
	}
	100% {
		transform:translateX(0px)
	}
}
.snowflake { 
	position:fixed;
	top:-10%;
	z-index:9999;
	-webkit-user-select: none; 
	-moz-user-select: none;
	-ms-user-select:none;
	user-select:none;
	cursor:default;
	-webkit-animation-name:snowflakes-fall,snowflakes-shake;
	-webkit-animation-duration:10s,3s;-webkit-animation-timing-function:linear,ease-in-out;
	-webkit-animation-iteration-count:infinite,infinite;
	-webkit-animation-play-state:running,running;
	animation-name:snowflakes-fall,snowflakes-shake;
	animation-duration:10s,3s;animation-timing-function:linear,ease-in-out;
	animation-iteration-count:infinite,infinite;
	animation-play-state:running,running}.snowflake:nth-of-type(0){left:1%;
		-webkit-animation-delay:0s,0s;animation-delay:0s,0s
	}
		.snowflake:nth-of-type(1){left:10%;-webkit-animation-delay:1s,1s;animation-delay:1s,1s}.snowflake:nth-of-type(2){left:20%;-webkit-animation-delay:6s,.5s;animation-delay:6s,.5s}.snowflake:nth-of-type(3){left:30%;-webkit-animation-delay:4s,2s;animation-delay:4s,2s}.snowflake:nth-of-type(4){left:40%;-webkit-animation-delay:2s,2s;animation-delay:2s,2s}.snowflake:nth-of-type(5){left:50%;-webkit-animation-delay:8s,3s;animation-delay:8s,3s}.snowflake:nth-of-type(6){left:60%;-webkit-animation-delay:6s,2s;animation-delay:6s,2s}.snowflake:nth-of-type(7){left:70%;-webkit-animation-delay:2.5s,1s;animation-delay:2.5s,1s}.snowflake:nth-of-type(8){left:80%;-webkit-animation-delay:1s,0s;animation-delay:1s,0s}.snowflake:nth-of-type(9){left:90%;-webkit-animation-delay:3s,1.5s;animation-delay:3s,1.5s}



