/* Header */

header .hero {
	padding: 6rem 2rem;
}

header p {
	font-size: 1.5rem;
	margin: 1rem 0 0;
	line-height: 1.1;
}

@media screen and (min-width: 401px) {
	header h1 {
		font-size: 3.5rem;
		text-shadow: 0 0 14rem #ecdcb7;
	}
}

@media screen and (max-width: 400px) {
	header h1 {
		font-size: 2.75rem;
		text-shadow: 0 0 12rem #ecdcb7;
	}
}

/* Section */

section {
	padding: 6rem 2rem;
	width: 100%;
}

/* Tickets */

.tickets table {
	font-size: 1.5rem;
	display: block;
}

.tickets table tr {
	display: flex;
	flex-direction: column;
	padding: 2rem;
	text-align: center;
	line-height: 1.1;
	width: 100%;
}

.tickets table tbody,
.tickets table td {
	display: block;
}

.tickets table tr:nth-child(2n+1) {
	background: rgba(255, 255, 255, 0.35);
}

.tickets a {
	line-height: inherit;
	font-size: 1.25rem;
	border-radius: 1.625rem;
	margin: 0.5rem 0 0;
}

.tickets a:hover {
	background: #589f98;
}

/* Divider */

.divider-butterfly img {
	margin: -50px auto -85px;
	display: block;
	height: 135px;
}

.divider-heart img {
	margin: -80px auto -55px;
	display: block;
	height: 135px;
}

/* About */

.about > div {

	gap: 2rem;
	width: 100%;
}

.about h2 {
	margin: 0 0 1.5rem;
	line-height: 1;
}

.about p {
	font-size: 1.2rem;
	line-height: 1.5;
}

.about .social {
	display: flex;
	gap: 1rem;
	margin: 1.5rem 0 0;
}

.about .social > div {
	background: linear-gradient(to right, #f7db70, #f78c77);
	padding: 9rem;
}

.about .social svg {
	width: 36px;
}

@media screen and (min-width: 401px) {
	.about h2 {
		font-size: 3rem;
	}
}

@media screen and (max-width: 400px) {
	.about h2 {
		font-size: 2.5rem;
	}
}

/* Video */

.video-placeholder svg {
	display: block;
	fill: #f4ecd9;
	margin: 0 auto;
	width: 60px;
}

.video-placeholder h3 {
	font-size: 1.75rem;
	line-height: 1;
	margin: 0;
	text-align: center;
}

.video-placeholder p {
	font-size: 1.25rem;
	line-height: 1;
	margin: 0;
}

.video-placeholder img {
	margin-top: -34px;
	width: 260px;
}

.video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 400px) {
	.video-placeholder img {
		display: none;
	}

	.video-placeholder p {
		font-size: 1rem;
	}
}

/* Quote */

.quote {
	margin: 6rem 2rem 0;
}

.quote p:first-child {
	margin: 0;
	font-size: 1.25rem;
	line-height: 1.2;
}

.quote .author {
	margin: 1rem 0 0;
}

/* Footer */

footer > div {
	padding: 2rem;
	flex-direction: column;
	align-items: center;
	gap: 2rem;
	text-align: center;
}

footer .presented-by > div {
	display: flex;
	align-items: center;
	gap: 1rem;
}

footer .presented-by img {
	height: 32px;
}

footer .presented-by .principal-entertainment img {
	height: 26px;
}

footer .presented-by h3 {
	margin: 0 0 1rem;
	font-size: 1rem;
}

footer .credits p {
	margin: 0;
}

