body {
	margin: 0;
	font-family: "Open Sans", sans-serif;
	font-optical-sizing: auto;
  	font-style: normal;
  	overflow: hidden;
}
button {
	padding: 5px;
	cursor: pointer;
	transition: 0.15s ease-out;
}

.button {
	font-family: "Open Sans", sans-serif;
	border: none;
	padding: 7px 15px;
	border: 1px solid black;
	box-shadow: 3px 3px 0px 0px black;
	background: #ff6600;
	color: black;
	border-radius: 4px;
	text-transform: uppercase;
  font-weight: 600;
  color: white;
  font-size: 15px;
}

input {
	border: none;
	border: 1px solid black;
}
.button--white {
  border-color: white;
  background: black;
  color: white;
  box-shadow: 3px 3px 0px 0px white;
}
.button:hover {
	border-color: black;
	box-shadow: 1px 1px 0px 0px black;
}
.button--white:hover {
	border-color: white;
	background: black;
	color: white;
}

/* =========================================================================  */
/* MODAL */
/* =========================================================================  */
.modal {
	position: fixed;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
	display: none;
	align-items: center;
	justify-content: center;
	z-index: 50;
}
.modal.is-open {
	display: flex;
}
.modal__content {
	max-width: 80vw;
	max-height: 85vh;
	position: relative;
	box-shadow: 7px 7px 0px 0px black;
	border-radius: 15px;
	overflow: hidden;
	border: 2px solid black;
}
.modal__inner-content {
	background: white;
	overflow: auto;
	padding: 30px 50px;
	text-align: center;
	position: relative;
	max-width: 80vw;
	max-height: 85vh;
}
.modal__title {
	font-size: 1.5rem;
	font-weight: 800;
	text-transform: uppercase;
}
.modal__goal {
	max-width: 100%;
	width: 300px;
	margin: 20px 0;
}
.modal__nav {
	background: #ff6600;
	display: flex;
	justify-content: flex-end;
	padding: 2px;
}

.modal__close {
	font-size: 0;
	padding: 5px 8px;
	border-radius: 100px;
	width: 30px;
	height: 30px;
	z-index: 10;
	border: none;
	background: none;
}

.modal__close:hover {
	background: none;
}
.modal__close svg { overflow: visible; }
.modal__close path { transition: 0.15s ease-out; }
.modal__close:hover svg path {
	fill: black;
	stroke: black;
}
.modal__details {
	margin-bottom: 20px;
	text-align: left;
	max-width: 500px;
}
.modal__details li {
	list-style-position: inside;
	line-height: 1.2;
	margin-bottom: 6px;
}
.modal__details li::marker {
	color: #ff6600;
	font-weight: 800;
}


/* =========================================================================  */
/* NAV */
/* =========================================================================  */
.nav {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 10px 15px;
	z-index: 10;
	background: black;
	color: white;
	display: flex;
	align-items: center;
	box-shadow: 0 0 14px 8px rgb(0 0 0 / 24%);
}
.nav__level {
	flex-basis: 33.3333%;
	font-weight: 800;
	text-transform: uppercase;
}
.nav__goal {
	margin-left: auto;
	margin-right: auto;
	flex-basis: 33.3333%;
	text-align: center;
}
.nav__goal-button {
	
}
.nav__form {
	text-align: right;
	flex-basis: 33.3333%;
	font-size: 0.8em;
}
.nav__form.wrong {
	color: red;
}
.nav__form.wrong input {
	animation: shake 0.2s ease-in-out 0s 2;
}
@keyframes shake {
  0% {
    transform: translateX(0rem);
  }
  25% {
    transform: translateX(0.5rem);
  }
  75% {
    transform: translateX(-0.5rem);
  }
  100% {
    transform: translateX(0rem);
  }
}
.input-text {
	width: 8ch;
	background: black;
	color: white;
	border: 1px solid white;
	border-radius: 4px;
	margin-right: 5px;
	font-size: 20px;
	width: 5ch;
	text-align: center;
}
.input-text::placeholder {
	font-size: 13px;
}
.nav__form-container {
	display: flex;
	justify-content: flex-end;
}
.nav__form-container button {}

/* =========================================================================  */
/* CONTENT */
/* =========================================================================  */
.content iframe {
	width: 100%;
	height: 100vh;
}

/* =========================================================================  */
/* BRAVO */
/* =========================================================================  */
.bravo {
	text-align: center;
	font-size: 24px;
	max-width: 50vw;
	padding: 40px;
	margin-left: auto;
	margin-right: auto;
}
.bravo img {
	width: 30vw;
	margin-top: 20px;
}