/* Defaults */
html, body {
	height: 100%;
}
html {
	font-size: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}
nav, main, section, footer {
	display: block;
}
body, h1, h2, h3, h3, p, a, img, video, button, form, input, label, textarea, iframe {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	text-decoration: none;
}
@font-face {
	font-family: "MyriadPro-Regular";
	src: url(MyriadPro-Regular.otf);
	font-style: normal;
	font-weight: 400;
}
@font-face {
	font-family: "Lunchbox";
	src: url(Lunchbox.woff);
	font-style: normal;
	font-weight: 400;
}
body {
	position: relative;
	-moz-font-feature-settings: 'kern';
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-family: "MyriadPro-Regular";
	font-weight: 400;
	font-size: 1.25vw;
	font-synthesis: none;
	text-rendering: optimizeLegibility;
	background-color: white;
	color: #0055b8;
}
h1, h2, h3, h4 {
	position: relative;
	margin: 0;
	font-family: "Lunchbox";
	font-weight: 400;
	line-height: 1.2em;
	text-transform: uppercase;
}
h1 {
	font-size: 2.6vw;
}
h2 {
	font-size: 2.4vw;
}
p {
	line-height: 1.2em;
	word-wrap: break-word;
}
a {
	position: relative;
	color: inherit;
	cursor: pointer;
}
a:hover,
a:visited {
	color: inherit;
}
section {
	position: relative;
	width: 100%;
}
.slanted {
	-webkit-transform: rotate(-5deg);
	transform: rotate(-5deg);
}



.loading {
	display: block;
	z-index: 1;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #0055b8;
	-webkit-transition: opacity .5s;
	transition: opacity .5s;
}
.loading-fade {
	opacity: 0;
}
.loading-hide {
	display: none;
}
.loading-logo {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 340px;
	height: 200px;
	max-width: 80vw;
	max-height: 80vh;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}



.intro {
	width: 100%;
	height: 45vw;
	max-height: 100vh;
	background-color: #0055b8;
	color: white;
	overflow: hidden;
}
.mainpage {
	position: absolute;
	right: 10vw;
	top: 2.5vw;
}
.intro-text {
	position: absolute;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: wrap;
	flex-flow: wrap;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	left: 0;
	top: 0;
	width: 55%;
	height: 100%;
	text-align: center;
	-webkit-transform: translateX(-20vw) rotate(-5deg);
	transform: translateX(-20vw) rotate(-5deg);
	-webkit-transition: -webkit-transform 1.5s ease-in-out;
	transition: transform 1.5s ease-in-out;
}
.intro-show .intro-text {
	-webkit-transform: translateX(0) rotate(-5deg);
	transform: translateX(0) rotate(-5deg);
}
.intro-text > div {
	width: 35vw;
}
.logo {
	position: relative;
	width: 13.0208vw;
	height: auto;
	margin-bottom: 1.4em;
}
.intro h1 {
	margin: .75em 0;
}
.intro-song {
	display: inline-block;
	text-align: left;
}
.intro-volume {
	display: inline-block;
	vertical-align: top;
	position: relative;
	width: 2.5em;
	height: 2.8em;
	margin-right: .75em;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}
.intro-song p {
	display: inline-block;
	vertical-align: top;
}
.intro-audio {
	position: absolute;
	left: 0;
	top: 0;
	width: 0;
	height: 0;
	opacity: 0;
}
.intro-picture {
	position: absolute;
	right: 0;
	top: 0;
	width: 45%;
	height: 100%;
	background-size: contain;
	background-position: right bottom;
	background-repeat: no-repeat;
	-webkit-transform: translateX(20vw);
	transform: translateX(20vw);
	-webkit-transition: -webkit-transform 1.5s ease-in-out;
	transition: transform 1.5s ease-in-out;
}
.intro-show .intro-picture {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}



.why {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 10vw 12vw;
	background-color: #ffcc00;
}
.why h2 {
	display: inline-block;
	vertical-align: top;
	width: 12.5vw;
}
.why p {
	display: inline-block;
	vertical-align: top;
	width: 60vw;
}



.tasha {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 10vw 12vw;
}
.tasha-text,
.tasha-facts {
	position: relative;
	width: 25vw;
}
.tasha-subsection {
	margin-bottom: 15vw;
}
.tasha h2 {
	margin: .75em 0;
}
.fact {
	padding: 1em;
	background-color: #d9ebf4;
	margin-bottom: 1em;
	-webkit-transform: translateX(5vw);
	transform: translateX(5vw);
	-webkit-transition: -webkit-transform .5s ease-in-out;
	transition: transform .5s ease-in-out;
}
.fact:nth-of-type(even) {
	background-color: #feebb4;
	-webkit-transform: rotate(15deg) translateX(-5vw);
	transform: rotate(15deg) translateX(-5vw);
}
.fact:first-of-type {
	-webkit-transform: rotate(-10deg) translateX(8vw);
	transform: rotate(-10deg) translateX(8vw);
}
.fact:last-of-type {
	background-color: #feebb4;
	width: 11vw;
	margin-top: -2vw;
}
.tasha-facts-gather .fact {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}
.tasha-facts-gather .fact:nth-of-type(even) {
	-webkit-transform: rotate(10deg) translateX(-2vw);
	transform: rotate(10deg) translateX(-2vw);
}
.tasha-pictures {
	position: absolute;
	right: 12vw;
	top: 10vw;
	width: 45vw;
	height: calc(100% - 18vw);
}
.tasha-pictures::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.tasha-chair,
.tasha-table {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: auto;
}
.tasha-egg {
	position: absolute;
	left: 4vw;
	top: 0;
	width: 15vw;
	height: auto;
	-webkit-transition: -webkit-transform 1s ease-in-out;
	transition: transform 1s ease-in-out;
}



.conditions-title {
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 1.2em 10vw 1em 10vw;
	background-color: #0055b8;
	color: white;
	text-align: center;
}
.conditions-animation {
	position: relative;
	width: 100%;
	background-color: #2582c5;
	color: white;
}
.conditions-video {
	display: block;
	position: relative;
	left: 0;
	width: 100%;
}
.conditions-animation h2 {
	position: absolute;
	left: 50vw;
	top: 18vw;
	width: 40vw;
	text-align: center;
}



.packages {
	overflow: hidden;
}
.packages-title {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 10vw 12vw;
	text-align: center;
}
.package-c1 {
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 15vw;
	background-color: #ffcc00;
}
.package-c1 h2 {
	position: relative;
	left: 21.5vw;
	width: 7vw;
	padding: 1.2em 0 1em 0;
	text-align: center;
}
.package-c1 img {
	position: absolute;
	left: 43vw;
	top: 50%;
	width: 45vw;
	height: auto;
	-webkit-transform: translate(100%, -50%);
	transform: translate(100%, -50%);
	-webkit-transition: -webkit-transform 1s ease-in-out;
	transition: transform 1s ease-in-out;
}
.package-c1 img.package-c1-show {
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}
.package-c0 {
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 12vw;
	background-color: #0055b8;
	color: white;
}
.package-c0 h2 {
	position: relative;
	left: 67vw;
	width: 16vw;
	padding: 1.2em 0 1em 0;
	text-align: center;
}
.package-c0 img {
	position: absolute;
	left: 12vw;
	top: 50%;
	width: 45vw;
	height: auto;
	-webkit-transform: translate(-100%, -50%);
	transform: translate(-100%, -50%);
	-webkit-transition: -webkit-transform 1s ease-in-out;
	transition: transform 1s ease-in-out;
}
.package-c0 img.package-c0-show {
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}



.delivery {
	position: relative;
	overflow: hidden;
}
.delivery-content {
	position: relative;
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
}
.delivery-text {
	position: relative;
	display: inline-block;
	vertical-align: top;
	-webkit-flex: 0 0 40%;
	flex: 0 0 40%;
	width: 40%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-left: 12%;
}
.delivery-text h2 {
	margin-top: 1em;
	margin-bottom: .75em;
}
.delivery-truck {
	position: relative;
	display: inline-block;
	vertical-align: top;
	-webkit-flex: 0 0 60%;
	flex: 0 0 60%;
	width: 60%;
	height: auto;
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
	-webkit-transition: -webkit-transform 2s ease-in-out;
	transition: transform 2s ease-in-out;
}
.delivery-truck-show {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}



.reviews {
	overflow-x: hidden;
}
.reviews-title {
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	padding: 5vw 12vw 5vw 12vw;
	text-align: center;
}
.reviews-slider {
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	padding: 10vw 12vw;
	text-align: center;
	background-color: #ffcc00;
}
.reviews-content {
	position: relative;
	padding: 0 5vw;
	min-height: 18.5vw;
}
.reviews-quote-left {
	position: absolute;
	left: 0;
	top: 0;
	width: 2.8125vw;
	height: auto;
}
.reviews-quote-right {
	position: absolute;
	right: 0;
	bottom: 5vw;
	width: 2.8125vw;
	height: auto;
}
.reviews-list {
	position: relative;
}
.review {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	opacity: 0;
	-webkit-transform: translateX(0);
	transform: translateX(0);
	-webkit-transition: opacity .25s, -webkit-transform .25s;
	transition: opacity .25s, transform .25s;
}
.review-active {
	position: relative;
	opacity: 1;
}
.review-active-1 .review:nth-of-type(1),
.review-active-2 .review:nth-of-type(1) {
	-webkit-transform: translateX(-20vw);
	transform: translateX(-20vw);
}
.review-active-0 .review:nth-of-type(2) {
	-webkit-transform: translateX(20vw);
	transform: translateX(20vw);
}
.review-active-2 .review:nth-of-type(2) {
	-webkit-transform: translateX(-20vw);
	transform: translateX(-20vw);
}
.review-active-0 .review:nth-of-type(3),
.review-active-1 .review:nth-of-type(3) {
	-webkit-transform: translateX(20vw);
	transform: translateX(20vw);
}
.reviews-bullets {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
}
.reviews-bullets div {
	width: 14px;
	height: 14px;
	border-radius: 50%;
	border: 0.2vw solid #0055b8;
	margin-right: 20px;
	cursor: pointer;
}
.reviews-bullets div:last-of-type {
	margin-right: 0;
}
.reviews-bullets div:hover,
.reviews-bullet-active {
	background-color: #0055b8;
}



footer {
	position: relative;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 10vw 12vw;
	background-color: #0055b8;
	color: white;
}
.footer-column {
	-webkit-flex: 0 0 25%;
	flex: 0 0 25%;
}
.footer-column-logo {
	-webkit-flex: 0 0 50%;
	flex: 0 0 50%;
	text-align: center;
}
footer a:hover {
	color: #ffcc00;
}



/* Mobile landscape */
@media (max-width: 1023px) {
	body {
		font-size: 2vw;
	}
	h1 {
		font-size: 4vw;
	}
	h2 {
		font-size: 3vw;
	}
	.intro {
		height: 50vw;
		max-height: none;
	}
	.intro-text > div {
		width: 45vw;
	}
	.reviews-content {
		position: relative;
		padding: 0 5vw;
		min-height: 23vw;
	}
}



/* Mobile portrait */
@media (max-width: 480px) {
	body {
		font-size: 12px;
	}
	h1 {
		font-size: 26px;
	}
	h2 {
		font-size: 16px;
	}
	.intro {
		width: 100%;
		height: auto;
		max-height: none;
	}
	.mainpage {
		right: 25px;
		top: 25px;
	}
	.intro-text {
		position: relative;
		left: auto;
		top: auto;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		width: 100%;
		height: auto;
		padding: 25px;
	}
	.intro-text > div {
		width: 350px;
		max-width: 100%;
	}
	.logo {
		width: 150px;
		margin-top: 25px;
	}
	.intro-picture {
		position: relative;
		left: auto;
		top: auto;
		width: 100%;
		height: 65vw;
	}
	.why {
		padding: 25px;
	}
	.why h2 {
		width: auto;
	}
	.why p {
		width: 70%;
		margin: 25px 0 0 25px;
	}
	.tasha {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-flow: wrap;
		flex-flow: wrap;
		padding: 25px;
	}
	.tasha-pictures {
		position: relative;
		right: auto;
		top: auto;
		width: 45%;
		height: auto;
	}
	.tasha-chair,
	.tasha-table {
		width: calc(100vw - 50px);
	}
	.tasha-egg {
		left: 0;
		width: 30vw;
	}
	.tasha-text {
		position: relative;
		width: 55%;
		padding-bottom: 80vw;
	}
	.tasha-facts {
		width: 100%;
		padding: 25px;
	}
	.tasha-subsection {
		margin-bottom: 100px;
	}
	.fact:last-of-type {
		width: 50%;
		margin-top: -1em;
	}
	.conditions-title {
		padding: 35px 25px 25px 25px;
	}
	.conditions-animation h2 {
		left: 45vw;
		top: 12vw;
		width: 45vw;
		font-size: 4vw;
	}
	.packages-title {
		padding: 35px 25px 25px 25px;
	}
	.package-c1 {
		margin-bottom: 12vw;
	}
	.package-c1 h2 {
		left: 0;
		width: 50vw;
		padding: 15px 0 8px 0;
	}
	.package-c1 img {
		left: 45vw;
		width: 50vw;
	}
	.package-c0 {
		margin-bottom: 12vw;
	}
	.package-c0 h2 {
		left: 55vw;
		width: 40vw;
		padding: 15px 0 8px 0;
	}
	.package-c0 img {
		left: 5vw;
		width: 50vw;
	}
	.delivery-text {
		padding-left: 25px;
	}
	.reviews-title {
		padding: 35px 25px 25px 25px;
	}
	.reviews-slider {
		padding: 25px;
	}
	.reviews-content {
		min-height: auto;
		padding: 0 50px 40px 50px;
	}
	.reviews-quote-left {
		width: 40px;
	}
	.reviews-quote-right {
		width: 40px;
		bottom: 40px;
	}
	.reviews-bullets {
		margin-top: 25px;
	}
	.reviews-bullets div {
		border-width: 2px;
	}
	footer {
		display: block;
		padding: 25px;
	}
	footer .logo {
		position: absolute;
		left: 25px;
		top: 25px;
		width: calc(50vw - 50px);
		max-width: 250px;
		margin: 0;
	}
	.footer-column {
		width: 100%;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		padding-left: 50%;
	}
	.footer-column:nth-of-type(2) {
		margin-bottom: 1em;
	}
}