﻿@import url('https://fonts.googleapis.com/css2?family=Questrial&display=swap');

html
{
	margin: 0;
	padding: zero;
	height: 100%;
}

body
{
    font-family: 'Questrial', 'sans-serif';
	font-size: calc(max(.875em, min(1.5em, 2.5vw)));
	margin: 0 auto;
	padding: 0 2em;
	max-width: 1000px;
	--load-delay: 0s;

	visibility: hidden;

	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
}

::selection
{
  color: white;
  background-color: black;
}

a
{
  all: unset;
  cursor: pointer;
}

h1
{
	font-size: calc(min(3em, 25vw));
	text-transform: uppercase;
	margin: 0;
	padding: 0;
	padding-bottom: .5rem;
}

h2
{
	font-size: calc(min(1.5em, 10vw));
	font-weight: normal;
	margin: 0;
	padding: 0;
}	


#header
{
	padding-top: 1em;
	user-select: none;
	text-align: right;
}

main
{
	display: grid;
	grid-template-rows: 1fr;
	grid-template-columns: 5fr 4fr;

	overflow-y: auto;
}


#main-images
{
	width: 100%;
	display: grid;
	text-align: center;

	align-items: center;
	justify-content: center;
	cursor: pointer;
	user-select: none;
}



#main-images img
{
	grid-column: 1;
	grid-row: 1;
	width: 100%;

	aspect-ratio: 1/1;
	object-fit: contain;
	margin: 0 0 0 auto;

	transition-property: opacity;
}

@media screen and (max-aspect-ratio: 4/3)
{
	main
	{
		grid-template-columns: 1fr 1fr;
	}
}

@media screen and (max-aspect-ratio: 1/1)
{
	main
	{
		grid-template-columns: 4fr 5fr;
	}
}


#main-images img.show
{
	transition-duration: 1.5s;
	opacity: 100%;
	z-index: 1;
}

#main-images img.hide
{
	transition-duration: .75s;
	opacity: 0%;
	z-index: -1;
}

#main-copy
{
	margin: 0;
	padding: 0;
	padding-right: 2em;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 1em;
}

p
{
	margin: 0;
	padding: 0;
}


#footer
{
	padding-bottom: 1em;
	text-align: right;
}

.fine-print
{
	font-size: .75em;
}


#footer a
{
	font-size: 1.125em;
	padding-left: .5em;
	padding-right: .5em;
	
	text-transform: uppercase;
	color: black;
	text-decoration: none;
}

#footer a:hover
{
	font-weight: bold;
}

@media screen and ((max-aspect-ratio: 3/4) or (max-width: 500px))
{
	body
	{
		padding: 0 1em;
	}
	
	h1
	{
		font-size: 2.5em;
	}

	h2
	{
		font-size: 1.25em;
	}

	main
	{
		display: flex;
		flex-direction: column-reverse;
		justify-content: center;
		height:100%;
		padding: 0;
		margin: 2em 0;
		gap: 2em;
	}

	#main-copy
	{
		font-size: 1rem;
		padding-right: 3em;
	}

	#main-images img
	{
		aspect-ratio: 4/3;
	}
	#footer a
	{
		font-size: 1.25em;
	}
}