:root {
  --r-main-font-size: 1.5rem;
  --r-heading1-size: 3em;
  --r-heading2-size: 1.8em;
  --r-heading3-size: 1.2em;
  --r-heading4-size: 1.1em;
}

section {
	width: 100%;
	height: 100%;
}

.centered {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.reveal pre {
	font-size: var(--r-main-font-size);
	width: auto;
}

.reveal pre code {
	padding: 0.5em;
}

.reveal .additional-info {
	position: fixed;
	bottom: 1rem;
	width: 100%;
}

.reveal .additional-info > a {
	bottom: 1em;
}

.reveal .browser-support {
	display: flex;
	justify-content: center;
	gap: 1rem;
	margin: 0;
	padding: 0;
}

.chrome,
.safari,
.firefox,
.edge,
.opera {
	content: '';
	display: flex;
	width: 3rem;
	height: 5rem;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: contain;
	justify-content: center;
	align-items: end;
	font-size: 0.6em;
}

.chrome {
	background-image: url('img/chrome.svg');
}

.safari {
	background-image: url('img/safari.svg');
}

.firefox {
	background-image: url('img/firefox.svg');
}

.edge {
	background-image: url('img/edge.svg');
}

.opera {
	background-image: url('img/opera.svg');
}

.unsupported {
	filter: grayscale(100%);
}

[class*="baseline-"] {
	display: flex;
	justify-content: center;

	&::before {
		display: block;
		width: 2em;
		height: 2em;
	}
}

.baseline-widely-available::before {
	content: url('img/baseline-widely-available.svg');
}

.baseline-newly-available::before {
	content: url('img/baseline-newly-available.svg');
}