body {
	margin: 0;
}

/******************
*	NAV
*******************/
nav .navbar-toggler {
	border: none;
}
nav .navbar-toggler:focus {
	outline: none;
	box-shadow: none;
}

/******************
*	HERO
*******************/
#hero:not(.carousel) {
	margin-top: 3.6em;
	height: calc(30vh + 3.6em);
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	position: relative;
	background-color: rgb(77, 77, 77);
}
#hero:not(.carousel) > img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
	opacity: .3;
}
#hero:not(.carousel) > .cp-title {
	position: absolute;
	transform: translate(-50%, -50%) !important;
	top: 45%;
	left: 50%;
	color: white;
}
#hero:not(.carousel) > .breadcrumb {
	position: absolute;
	transform: translate(-50%, -50%) !important;
	top: 60%;
	left: 50%;
	color: white;
}


/******************
*	MAIN
*******************/
main > section {
	padding: 10rem 0;
}

/******************
*	QR codes
*******************/
.qr-code {
	min-height: 100px;
	width: auto;
	max-width: 90%;
	display: block;
	margin: 0 auto;
}

/******************
*	FORMS
*******************/
form label.required-label::after {
	content: "*";
	color: red;
	padding-left: 0.2em;
	font-weight: normal;
}