@font-face {
	font-family: 'The Storm';
	src: url("../anniversary-tour-assets/fonts/ShmTheStorm-Regular.woff2") format("woff2");
	font-display: swap;
}

@font-face {
	font-family: "The Storm";
	src: url("../anniversary-tour-assets/fonts/ShmTheStormOutline-Regular.woff2") format("woff2");
	font-display: swap;
	font-style: italic;
}

* {
	box-sizing: border-box;
}

html,
body {
	min-height: 100dvh;
	height: 100dvh;
	margin: 0;
	padding: 0;
}

body {
	background: black url(../anniversary-tour-assets/images/bg.webp) center center no-repeat;
	background-size: cover;
	color: white;
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: 'The Storm', sans-serif;
}

a {
	color: white;
}

img {
	display: block;
	max-width: 100%;
}

.header {
	/* margin-bottom: -50px; */
	margin-bottom: -8vw;
	margin-left: auto;
	margin-right: auto;
	max-width: 720px;
	width: 100%;
	text-indent: -9999px;
	aspect-ratio: 1000 / 359;
}

@media screen and (min-width: 880px) {
	.header {
		grid-column: 2 / span 1;
		align-self: end;
		justify-self: center;
		margin-bottom: 0;
	}
}

.lostalone {
	background: url(../anniversary-tour-assets/images/lostalone.webp) center center no-repeat;
	background-size: contain;
	display: block;
	aspect-ratio: 1000 / 359;
	width: 100%;
	height: auto;
}
@media screen and (min-width: 880px) {
	.lostalone {
		margin-top: 0;
	}
}

.content {
	max-width: 1200px;
	margin: 0 auto;
	padding: 20px;
	height: 100%;
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
@media screen and (min-width: 880px) {
	.content {
		display: grid;
		grid-template-columns: 4fr 5fr;
		grid-template-rows: 3fr 3fr 1fr;
		grid-gap: 20px;
	}
}

.album-cover {
	position: relative;
	z-index: -1;
	margin-bottom: 50px;
	
	img {
		margin: 0 auto;
		width: 80vw;
		height: auto;
		box-shadow: 0 0 18px rgba(3, 145, 201, 0.25);
	}
}
@media screen and (min-width: 880px) {
	.album-cover {
		grid-column: 1 / span 1;
		grid-row: 1 / span 2;
		align-self: center;
		margin-bottom: 0;
	}
}

.details {
	text-align: center;
	container-type: inline-size;
	margin-top: -6.75em;

	h2 {
		font-size: 5.5cqw;
		margin: 0;
	}

	h3 {
		font-size: 4cqw;
		margin: 0 0 2em 0;
	}
}
@media screen and (min-width: 640px) {
	.details {
		margin-top: -8em;

		h3 {
			margin-bottom: 1em;
		}
	}
}
@media screen and (min-width: 880px) {
	.details {
		margin-top: 0;
		grid-column: 2 / span 1;
		align-self: top;
	}
}

table {
	width: 100%;
	border-collapse: collapse;
	/* font-size: 0.875em; */
	font-size: 14px;
}
table, th, td {
	padding: 5px 2px;
}
table {
	margin-top: auto;
	
	tr:nth-of-type(1) {
		display: none;
	}
	td:nth-of-type(2) {
		text-align: center;
	}
	td:nth-of-type(3) {
		text-align: right;
	}

	a {
		text-decoration: none;
		padding: 0 5px;
		text-align: center;
		display: flex;
		justify-content: center;
		align-items: center;
		transition: transform 0.2s ease;
	}
	a:hover {
		transform: translateX(10px);
	}
	a[href="#"] {
		opacity: 0.5;
		pointer-events: none;
		font-style: italic;
	}
}

.logos {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
	width: 100%;
	margin-top: auto;
	padding: 40px 0 20px;

	img {
		width: auto;
		height: 2.3vw;
		max-height: 36px;
	}
}
@media screen and (min-width: 880px) {
 .logos {
		grid-column: 1 / span 2;
 }
}