@charset "utf-8";

:root {
	font-size: 16px;
}

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

body {
	color: #231f20;
	font-family: "Arial", sans-serif;
	font-size: 1rem;
	line-height: 1.5;
	background: #fbfbfb;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

#wrapper {
	position: relative;
	max-width: 72.5rem;
	margin: 1rem auto;
	overflow: hidden;
}

:is(a:link, a:visited, a:hover, a:active) {
	color: inherit;
	text-decoration: none;
	white-space: nowrap;
}

p {
	margin: 0 0 .625rem;
}

h1 {
	font-weight: 700;
	font-size: 2rem;
	color: #ed1c24;
	text-align: center;
	padding: .625rem 0;
	line-height: 1.2;
}

h2 {
	font-weight: bold;
	text-transform: uppercase;
	font-size: 1.312rem;
	color: #ed1c24;
	padding: .625rem 0;
	line-height: 2.2;
}

h3 {
	margin-top: 0;
	margin-bottom: 0;
	white-space: nowrap;
	padding: 0;
	font-weight: lighter;
	font-size: 1.062rem;
	font-stretch: condensed;
	color: #231f20;
}

ul {
	list-style: none;
	margin: 0 0 0.625rem 1.25rem;
	padding: 0;
}

ul li {
	padding-left: .937rem;
}

ul li:before {
	content: "\2022";
	float: left;
	margin-left: -.937rem;
	font-size: 1.375em;
	line-height: 1;
	color: #ed1c24;
}

.check {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	padding: 0;
	margin: .625rem 0;
}

.check li {
	display: inline-block;
	max-width: 20%;
	width: 20%;
	padding-right: 1%;
	text-align: center;
	padding-bottom: 0.5rem;
}

.check li:before {
	content: '';
	background: url(../images/check.png);
	margin: 0 65% 0 35%;
	background-size: cover;
	display: inline-block;
	height: 2.812rem;
	width: 2.812rem;
}

header {
	position: relative;
	height: 25rem;
	max-height: 25rem;
	background: #e7e8e9;
	overflow: hidden
}

.black-border,
.red-border,
.banner-img {
	height: 23.75rem;
	width: 70vw;
	min-width: 23.5rem;
	max-width: 51.25rem;
	border-radius: 0;
	position: absolute;
	padding: 0;
	clip-path: polygon(0% 0%, 100% 0%, 84% 100%, 0% 100%);
}

.red-border {
	background-color: #ed1c24;
	top: 1.25rem;
	left: -1.5rem;
	z-index: 3;
}

.black-border {
	background-color: #231f20;
	left: 1.75rem;
	top: -1.25rem;
	z-index: 4;
}

.banner-img {
	z-index: 4;
	clip-path: polygon(0% 0%, 100% 0%, 84% 100%, 0% 100%);
}

.banner {
	position: relative;
	height: 23.75rem;
	width: 70vw;
	min-width: 23.5rem;
	max-width: 51.25rem;
	object-fit: cover;
}

.logo {
	z-index: 5;
	position: absolute;
	top: 6%;
	left: 3%;
}

.info .location {
	background-image: url(../images/house.png);
	margin: 2.5rem 0 1.25rem 0;
	left: 74%;
}

.info > div {
	background-repeat: no-repeat;
	background-size: 3.75rem;
	background-position-y: center;
	height: 6.25rem;
	margin: 1.25rem 0;
	position: relative;
	left: 53.75rem;
	z-index: 10;
}

.info > div > div {
	margin-left: 5rem;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.info p {
	width: 19%;
	color: #231f20;
	font-weight: 700;
}

.info .type {
	background-image: url(../images/clock.png) ;
	left: 70%;
}

.info .level {
	background-image: url(../images/speedometer.png);
	left: 66%;
}

.container {
	padding: 2rem 4rem;
	background: #e7e8e9;
}

.flex {
	display: flex;
	justify-content: space-between;
}

.box {
	width: 40%;
}

.about p {
	text-align: justify
}

a.link {
	color: #4b575f;
}

.content {
	background: #4f4c4d;
	padding: 2rem 6.25rem;
}

.content p {
	text-align: center;
	color: #fff;
}

footer {
	padding: 1.125rem;
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
}

a.apply {
	display: inline-block;
	padding: .625rem 1.25rem;
	margin: 0;
	background: #676767;
	color: #fff;
	text-decoration: none;
	font-weight: 400;
	font-size: 1.125rem;
	line-height: 1.3;
	text-align: center;
}

a.apply:hover {
	background: #ef232a;
	text-decoration: none;
}

@media only screen and (max-width: 72.437rem) {
	#wrapper {
		border: none;
		margin: 0 auto;
		padding: 1rem;
	}

	p,
	ul {
		-moz-hyphens: auto;
		-webkit-hyphens: auto;
		-ms-hyphens: auto;
		hyphens: auto;
		margin: 0 0 1rem;
	}

	.about p {
		text-align: left;
	}
}

@media only screen and (max-width: 62.5rem) {
	header {
		height: 100%;
		max-height: 100%;
		display: flex;
		flex-direction: column;
	}

	.info {
		display: flex;
		justify-content: space-between;
		align-items: center;
		position: static;
		padding: 1rem;
		width: 100%;
		column-gap: .937rem;
	}

	.info .location,
	.info .type,
	.info .level {
		left: 0;
		background-size: 3.125rem;
		margin: 0;
	}

	.info p {
		width: 100%;
		margin: 0;
	}

	.black-border,
	.red-border {
		display: none;
	}

	.banner {
		position: static;
		height: auto;
		width: 100%;
		min-width: 100%;
		max-width: 100%;
		object-fit: cover;
	}

	.banner-img {
		clip-path: none;
		width: 100%;
		max-width: 100%;
		position: static;
		height: auto;
	}

	.container {
		padding: 0 1rem 1rem;
	}

	.content {
		padding: 1rem;
	}

	.box {
		width: 48%;
	}

	.check {
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
	}

	.check li {
		max-width: 100%;
		width: 100%;
		display: inline-block;
		text-align: left;
		padding: 0;
	}

	.check li:before {
		margin: 0;
		background-size: cover;
		width: 1.562rem;
		height: 1.562rem;
		margin-right: .625rem;
	}

	h1 {
		padding: 0 0 .625rem;
	}
}

@media only screen and (max-width: 48rem) {
	.flex {
		flex-direction: column;
	}

	.box {
		width: 100%;
	}

	h2 {
		line-height: 1;
	}

	h1 {
		font-size: 1.5rem;
	}

	h2 {
		font-size: 1.125rem;
	}

	footer {
		justify-content: center;
		align-items: center;
	}

	.info {
		flex-wrap: wrap;
		width: 100%;
	}

	.logo {
		width: 22%;
	}

	.info .location,
	.info .type{
		width: 48%;
	}
	.info .level {
		width: 100%;
	}
}

@media only screen and (max-width: 30rem) {
	.info {
		flex-direction: column;
	}

	.info .location,
	.info .type,
	.info .level {
		width: 100%;
	}

	.info > div {
		height: auto;
		display: block;
		padding: 0 0 1rem;
	}

	.info > div > div {
		margin-left: 3.75rem;
	}
}

@media only screen and (max-width: 23.437rem) {}