@media (prefers-reduced-motion: no-preference) {
	html,
	body {
		margin: 0;
		padding: 0;
		scroll-snap-type: y mandatory;
		scroll-behavior: smooth;
		scroll-padding: 0;
	}
	section {
		scroll-snap-align: start;
		scroll-margin: 0;
	}
}

html,
body {
	position: relative;
}

nav summary {
  list-style-type: "☰";
  font-size: 2rem;
  position: fixed;
  top: 0;
  right: 0;
  margin-right: 0.25em;
  cursor:pointer;
}
nav summary:hover {
  font-size:2.2em;
  text-shadow: 2px 2px 5px white;
}
nav summary span {
  font-size: 0;
}
nav [open] summary {
  list-style-type: "✖";
  color: var(--red);
}
nav details {
  text-align: right;
	position: fixed;
  top: 0;
  right: 0;
  margin-right: 2.5em;
}
nav ul {
  margin-top: 0;
  margin-right: 2.5em;
  display: inline-block;
}

section {
	background: #fff;
	min-height: 100vh;
	padding: 2.5em;
}

section > * {
	max-width: 40em;
	margin: 0.5em auto;
}

section h1 {
	font-size: 2em;
	text-align: center;
	line-height: 2rem;
	-webkit-backface-visibility: hidden;
}

section h2 {	
	font-size: 1.5em;
	text-align: center;
	line-height: 4rem;
	-webkit-backface-visibility: hidden;
}

section h3 {	
	text-align: center;
	-webkit-backface-visibility: hidden;
}

section h4 {	
	text-align: left;
	-webkit-backface-visibility: hidden;
}

section p {
	text-align: justify;
	-webkit-backface-visibility: hidden;
}

@media screen and (max-width: 32em) {
	section h2 {
		font-size: 2em;
	}
	section p {
		width: 90%;
		left: 5%;
		margin-top: 0;
	}
}
