/* Header */

header .hero {
	padding: 9rem 3rem;
}

header h1 {
	font-size: 6rem;
	width: 42rem;
	text-shadow: 0 0 22rem #ecdcb7;
}

header p {
	font-size: 2.5rem;
	margin: 1rem 0 0;
}

/* Section */

section {
	padding: 9rem;
}

@media screen and (max-width: 1200px) {
	section {
		padding: 9rem 4rem;
	}
}

@media screen and (max-width: 900px) {
	section {
		padding: 9rem 2rem;
	}
}

/* Tickets */

.tickets table {
	font-size: 2rem;
}

.tickets table tr:nth-child(2n+1) td {
	background: rgba(255, 255, 255, 0.35);
}

.tickets table td {
	padding: 1rem 2rem;
}

.tickets table td:last-child {
	text-align: right;
}

.tickets table tr:last-child td {
	border: 0 none;
}

.tickets a {
	line-height: inherit;
	font-size: 1rem;
	border-radius: 1.5rem;
	margin: 0;
	transition: background ease-in 0.3s;
	width: 154px;
}

.tickets a:hover {
	background: #589f98;
	/*	background: linear-gradient(to right, #f78c77, #f78c77);*/
}

@media screen and (max-width: 1600px) {
	.tickets table {
		font-size: 1.5rem;
	}
}

@media screen and (max-width: 1000px) {
	.tickets table {
		font-size: 1.25rem;
	}

	.tickets table td {
		padding: 1rem 2rem 1rem 0;
	}

	.tickets table td:first-child {
		padding-left: 2rem;
	}
}


/* Divider */

.divider-butterfly img {
	margin: -65px auto -115px;
	display: block;
	height: 180px;
}

.divider-heart img {
	margin: -100px auto -80px;
	display: block;
	height: 180px;
}

/* About */

.about h2 {
	margin: 0 0 1.5rem;
	font-size: 3rem;
	line-height: 1;
}

.about p {
	font-size: 1.2rem;
	line-height: 1.5;
}

@media screen and (min-width: 1300px) {

	.about > div {
		flex-direction: row;
		justify-content: center;
		align-items: center;
		gap: 6rem;
		width: 100%;
	}

	.about > div > div:first-child {
		flex-grow: 1;
	}

	.about > div > div:last-child {
		flex-grow: 0;
		flex-shrink: 0;
		width: 480px;
	}

	.about img {
		display: block;
		width: 100%;
	}

	.about .social {
		gap: 1rem;
		margin: 1.5rem 0 0;
	}

	.about .social svg {
		width: 36px;
	}
}

/* Video */

.video-placeholder.playing {
	pointer-events: none;
}

.video-placeholder.playing svg {
	opacity: 0.5;
}

.video-placeholder.hide {
	pointer-events: none;
	opacity: 0;
}

.video-placeholder svg {
	width: 140px;
}

.video-placeholder h3 {
	font-size: 5rem;
}

.video-placeholder p {
	font-size: 2rem;
	line-height: 1;
	margin: 0;
}

.video-placeholder img {
	margin-top: -88px;
	width: 690px;
}

/* Quote */

.quote {
	max-width: calc(900px + 9rem);
	margin: 9rem auto 0;
	padding: 0 9rem;
}

.quote p {
	text-align: left;
}

.quote p:first-child {
	font-family: "Point Panther";
	margin: 9rem 0 0;
	font-size: 2rem;
	line-height: 1.2;
}

.quote .author {
	margin: 1rem 0 0;
}

@media screen and (max-width: 1200px) {
	.quote {
		max-width: calc(900px + 4rem);
		padding: 0 4rem;
	}
}

@media screen and (max-width: 900px) {
	.quote {
		max-width: calc(900px + 2rem);
		margin: 9rem auto 0;
		padding: 0 2rem;
	}
}

/* Footer */

footer {
}

footer > div {
	display: flex;
	justify-content: space-between;
	align-items: end;
	background: #181613;
	color: #f4ecd9;
	padding: 3rem 9rem;
}

footer .presented-by > div {
	display: flex;
	align-items: center;
	gap: 3rem;
}

footer .presented-by img {
	height: 37px;
}

footer .presented-by .principal-entertainment img {
	height: 33px;
}

footer .presented-by h3 {
	font-family: "Point Panther";
	margin: 0 0 1rem;
	font-size: 1rem;
}

footer .presented-by img {
	display: block;
	margin: 0;
	width: 180px;
}

footer .presented-by .principal-entertainment img {
	display: block;
	margin: 0;
	width: auto;
	height: 33px;
}

footer .credits p {
	margin: 0;
	line-height: 1.5;
	text-align: right;
	font-size: 0.8rem;
}
