@font-face {
	font-family: caveat;
	src: url(caveat.ttf);
}

html {
	display: flex;
	flex-direction: column;
	align-items: center;
	background-color: #0c0f1f;
	font-family: caveat;
	font-size: 2rem;
	line-height: 0.75;
	height: 100vh;
	overflow: auto;
	    text-shadow: 0 0 2px white;
}

body {
	display: flex;
	flex-direction: column;
	align-items: center;
	min-height: 100vh;
	max-height: 100vh;
	
	background: url("sand.jpg");
	background-attachment: local;
	margin: 0;
	
	width: 100%;
	max-width: 960px;
	overflow-y: hidden;
	overflow-x: hidden;
	
	&:before {
		content: "";
		position: fixed;
		width: 200%;
		height: 150%;
		z-index: 1;
		max-width: 976px;
		box-shadow: inset 0px 0px 32px 48px #0c0f1f;
		top: -96px;
		pointer-events: none;
	}
}

form {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	font-size: 1.5rem;
	input[type=submit] {
		width: fit-content;
	}
	input, textarea {
		font-family: sans-serif;
		font-size: 0.75rem;
	}
	margin: 16px;
}

h2 {
	margin: 16px 48px;
	padding: 8px;
	text-align: center;
	background-color: #ffefd578;
	box-shadow: 0 0 4px 4px #ffefd578;
}

@keyframes waves {
	from {translate: 0px 25%;}	
	to {translate: 0px 60%;}
}

#waves-img {
	width: 100%;
	max-width: 960px;
	position: fixed;
	bottom: 0;
	translate: 0px 50%;
	
	animation-name: waves;
	animation-duration: 5s;
	animation-direction: alternate;
	animation-iteration-count: infinite;
	animation-timing-function: cubic-bezier(0.6, 0, 0.4, 1);
}

audio { display: none; }

main {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: max-content;
	gap: 16px;
	width: 100%;
}

article {
	/* background-image: url("bottle.png"); */
	padding: 24px;
	max-width: 480px;
	display: flex;
	white-space: pre-line;
	gap: 8px;
	flex-direction: column;
	margin: 0 32px;
	position: relative;
	left: -32px;
	div, header {
		background-color: #ffefd578;
		box-shadow: 0 0 4px 4px #ffefd578;
	}
	header { font-weight: bold; }
	
	img {
		position: absolute;
		top: 0;
		left: 0;
		width: 130%;
		height: 100%;
		object-fit: fill;
	}
	&:nth-child(even) {
		left: 32px;
		img { left: -28%; }
	}
}

.mute-btn {
	position: absolute;
	top: 20px;
	left: 20px;
	background: white;
	border: none;
	width: 48px;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 1;
	padding: 0;
}
.mute-btn svg {
	width: 24px;
	height: 24px;
	display: block;
}