body {
	color: #fff;
	font-family: myriad-pro, sans-serif;
	background: url(../img/bg-tile.jpg) repeat;
	animation: bgAnimation 90s linear infinite;
}

h1, h2, h3, header, main {
	text-shadow:
		-1px -1px 0 #000,
		0   -1px 0 #000,
		1px -1px 0 #000,
		1px  0   0 #000,
		1px  1px 0 #000,
		0    1px 0 #000,
		-1px  1px 0 #000,
		-1px  0   0 #000,
		0 4px 4px #000;
}

h1 {
	font-size: 32px;
	font-family: 'Changa One', cursive;
	font-weight: 400;
}

h2 {
	font-size: 24px;
}

h3 {
	margin: 0;
	padding: 0;
}

img {
	max-width: 100%;
}

button {
	border: 1px solid #000;
	box-shadow: 0 4px 4px #000;
	border-radius: 5px;
	color: #fff;
	cursor: pointer;
	font-size: 24px;
	font-weight: bold;
	max-width: 100%;
	text-shadow:
		-1px -1px 0 #000,
		0   -1px 0 #000,
		1px -1px 0 #000,
		1px  0   0 #000,
		1px  1px 0 #000,
		0    1px 0 #000,
		-1px  1px 0 #000,
		-1px  0   0 #000;
}

button.btn-primary {
	background-color: #D84136;
}

button.btn-primary:hover {
	background-color: #DDC04A;
}

button.btn-secondary {
	background-color: #3C5887;
}

button.btn-secondary:hover {
	background-color: #339EC8;
}

nav,
header,
main,
footer {
	width: 100%;
	margin: auto;
	position: relative;
}

main .container {
	width: 1200px;
	max-width: 100%;
	margin: auto;
}

nav .container{
	background: rgba(255, 255, 255, 0.9);
	position: absolute;
	width: 100%;
	top: 0;
	z-index:999;
	box-shadow: 0 1px 20px #000;
}

nav img {
	margin-right: 10px;
	height: 20px;
	vertical-align: middle;
}

.nsw-logo {
	height: 40px;
}

header {
	padding-top: 40px;
	padding-bottom: 40px;
	text-align: center;
	background: url(../img/header-bg-mobile-alt.jpg) 60% bottom / cover no-repeat;

}

header .container {
	overflow: hidden;
	z-index: 9;
	max-width: 100%;
	position: relative;
	margin: auto;
	height: 425px;
}

.bg-header-overlay,
.bg-header-overlay img,
.title-logo,
.release-copy,
.cta {
	position: absolute;
}

.bg-header-overlay {
	display: none;
}

.title-logo {
	z-index: 99;
	transform: scale(0);
	animation: zoomIn 0.5s ease-in-out 0.5s forwards;
	top: -50px;
	width: 100%;
}

.title-logo img {
	width: 700px;
}

.release-copy {
	z-index: 99;
	transform: scale(0);
	animation: zoomIn 0.5s ease-in-out 2.5s forwards;
	bottom: 60px;
	width: 100%;
}

.cta {
	z-index: 99;
	bottom: 20px;
	width: 100%;
}

.cta button {
	width: 300px;
	height: 50px;
}

main {
	font-weight: 600;
	font-size: 18px;
}

section#info{
	background: rgba(60, 88, 135, 0.5);
	padding: 1em;
	box-shadow: 0px 0px 5px #000;
	text-align: center;
	z-index: 999;
	position: relative;
}

section#info button {
	width: 580px;
	height: 70px;
}


section#product {
	background: url(../img/product-bg.jpg) center top / cover no-repeat fixed;
	padding: 1em;
	text-align: center;
}

section#product button {
	width: 300px;
	height: 60px;
}

.product-image img {
	border: 2px solid #D84136;
	box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
	border-radius: 5px;
}

.product-details {
	margin: auto;
	max-width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-around;
}

.feature-list {
	text-align: left;
	padding-bottom: 25px;
}

.retailer-links li {
	margin-bottom: 10px;
}

ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

footer {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-around;
	color: #000;
	background: #fff;
	box-shadow: 0px 0px 10px #000;
	z-index: 999;
	position: relative;
	padding: 5px;
	box-sizing: border-box;
}

footer .rating {
	width: 230px;
}
@media screen and (min-width: 426px) and (max-width: 1023px) {
	header .container {
		height: 800px;
	}
}

@media screen and (min-width: 1024px){

	h1 {
		font-size: 72px;
	}

	h2 {
		font-size: 36px;
	}

	button {
		font-size: 32px;
	}

	main .container {
		width: 1200px;
	}

	nav img {
		margin-right: 20px;
		height: 40px;
	}

	.nsw-logo {
		height: 66px;
	}

	header {
		padding-top:66px;
		padding-bottom: 0;
	}

	header .container {
		background: url(../img/header-bg.jpg) center bottom no-repeat;
		height: 1080px;
		max-width: 1920px;
	}

	header h1 {
		font-size: 96px;
	}

	.bg-header-overlay,
	.bg-header-overlay img,
	.title-logo,
	.release-copy,
	.cta {
		position: absolute;
	}

	.bg-header-overlay {
		display: initial;
		bottom: 0;
		width: 1920px;
		left: 50%;
		margin-left: -960px;
	}

	.bg-header-overlay img {
		width: initial;
		max-width: initial;
	}

	.overlay-monster {
		bottom: 0;
		left: -800px;
		animation: monsterSlideIn 0.5s ease-in-out 1s forwards, monsterAnimation 5s ease 1.5s infinite;
	}

	.overlay-hero {
		bottom: 0;
		right: -700px;
		animation: heroSlideIn 0.5s ease-in-out 1.5s forwards, heroAnimation 4s ease 2s infinite;
	}

	.overlay-monster-idea {
		bottom: 120px;
		left: 60px;
		transform: scale(0);
		animation: zoomIn 0.5s ease-in-out 1.5s forwards, ideaAnimationMonster 2s ease-in-out infinite;
	}

	.overlay-hero-idea {
		bottom: 0;
		right: 0;
		transform: scale(0);
		animation: zoomIn 0.5s ease-in-out 2s forwards, ideaAnimation 2s ease-in-out infinite;
	}

	.title-logo {
		width: 800px;
		top: 0;
		left: 50%;
		margin-left: -400px;
	}

	.release-copy {
		bottom: 20px;
		left: 1em;
		width: initial;
	}

	.cta {
		bottom: 20px;
		left: 50%;
		margin-left: -150px;
		width: initial;
	}

	main {
		font-size: 22px;
	}

	.product-details {
		width: 1020px;
	}

	.feature-list,
	.retailer-links {
		width: 50%;
	}

	section#product {
		padding-bottom: 250px;
	}

}

@keyframes zoomIn {
	0% {
		transform: scale(0);
	}
	100% {
		transform: scale(1);
	}
}

@keyframes ideaAnimation {
	0%, 100% {
		bottom: 0;
	}
	50% {
		bottom: 15px;
	}
}

@keyframes ideaAnimationMonster {
	0%, 100% {
		bottom: 120px;
	}
	50% {
		bottom: 135px;
	}
}

@keyframes heroSlideIn {
	0% {
		right: -700px;
	}
	100% {
		right: 0;
	}
}

@keyframes monsterSlideIn {
	0% {
		left: -700px;
	}
	100% {
		left: 0;
	}
}

@keyframes heroAnimation {
	0%, 100% {
		right: 0;
	}
	50% {
		right: 15px;
	}
}

@keyframes monsterAnimation {
	0%, 100% {
		left: 0;
	}
	50% {
		left: 15px;
	}
}

@keyframes bgAnimation {
	0% {
		background-position: 1920px 0;
	}
	100% {
		background-position: 0 0;
	}
}