:root{
	--ff: arial;
}
/*----- Reset -----------------------------------------*/
*, *::before, *::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4 {
	line-height: 1;
}

body, h1, h2, h3, p, dl, dd, figure {
	margin: 0;
}

ul[class] {
	list-style: none;
}
ul li::marker,
ol li::marker{
	color: var(--clr-blue);
}
ul:not([class]) li{
	margin-left: 2em;
}

input, button, textarea, select {
	font: inherit;
	padding: .1rem .5rem;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
	width: 100%;
}

body {
	line-height: 1.7;
	font-family: var(--ff);
	font-size: var(--fs-15px);
	font-weight: var(--fw-default);
	padding: .5rem;
}
.sr-only{
	display: none;
}
a{
	color: var(--clr-blue);
}
a[href="#"]{
	cursor: default;
	text-decoration: none;
}
.center{
	text-align: center;
}

/* Rental */
html{
	box-sizing: border-box;
}
body{
	background-color: rgb(237, 236, 236);
	color: black;
}
h1,h2{
	margin-bottom: 1rem;
}
h2{
	margin-top: 1.5rem;
}
.no-unit h1{
	border-bottom: solid 1px black;
}
.carousel {
	width: 100%;
	height: auto;
	overflow-x: hidden;
	position: relative;
	z-index: 1;
	white-space: nowrap;
}
.carousel_track {
	list-style: none;
	white-space: nowrap;
	position: absolute;
	left: 1px;
	position: relative;
}
.carousel_track li{
	display: inline-block;
	width: 500px;
	padding: 0 2px;
	position: relative;
}
.carousel_track li img{
	height: 30vh;
}
.arrow-left,
.arrow-right{
	line-height: 2rem;
	color: white;
	position: absolute;
	top: 50%;
	left: 1rem;
	font-size: 3rem;
	padding: .3rem;
	z-index: 100;
	transform: translateY(-50%);
}
.arrow-right{
	right: 1rem;
	left: auto;
}
.arrow-left:hover,
.arrow-right:hover{
	cursor: pointer;
}

.viewer{
	position: absolute;
	z-index: 99;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 2em;
	overflow: hidden;
	background: rgba(0,0,0,1);
	display: none;
}
.viewer > img {
	display: block;
	max-width:100%;
	max-height:100%;
	width: auto;
	height: auto;
	margin: 0 auto;
}
.viewer-close{
	position: absolute;
	top: 1rem;
	right: 1rem;
	padding: 0 .3rem;
	color: white;
	font-size: 2rem;
	border: solid 1px white;
	border-radius: .3rem;;
	cursor: pointer;
	z-index: 99;
}
.viewer-left,
.viewer-right{
	line-height: 2rem;
	color: white;
	position: absolute;
	top: 50%;
	left: 1rem;
	font-size: 3rem;
	padding: .3rem;
}
.viewer-right{
	right: 1rem;
	left: auto;
}
.viewer-left:hover,
.viewer-right:hover{
	cursor: pointer;
}

.bubble,
.description,
.thankyou,
.noscript,
.applicant > div{
	background-color: white;
	border-radius: .4rem;
	border: solid 1px #ccc;
	padding: 1rem;
	margin-bottom: 1rem;
}
.applicant{
	padding-bottom: 2rem;
	margin-bottom: 1rem;
}
.info > div {
	margin: 2rem 0rem;
}
.description{
	border-top: solid
}
.description p{
	margin-bottom: 1em;
}
.description li{
	list-style: none;
}
label {
	display: block;
	padding-top: 1rem;;
}
label[for="applicants_count"]{
	display: inline;
}
input{
	margin-bottom: 1em;
	border:0;
	border-bottom: solid 1px black;
	background-color: none;
	width: 100%;
}
input[type=radio]{
	width:fit-content;
}
input[type=radio] ~ label{
	display: inline;
	white-space: nowrap;
	padding-left: .3rem;
	padding-right: 1rem;
}
.radio{
	display: flex;
	flex-wrap: wrap;
	border: none;
}
.radio div{
	border: none;
}
pre{
	display: none;
}
.button{
	display: block;
	max-width: fit-content;
	margin: auto;
	background: #ccc;
	border: #ccc;
	border-radius: 1rem;
	padding: .5rem 1.5rem;
	cursor: pointer;
}
#Application,
.form,
.thankyou,
.count_notice{
	display: none;
}
.required::after{
	content:"*";
	color: red;
}
.noscript{
	color: red;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}
#additional_info{
	width: 100%;
}

#overlay {
	display: none;
	position: fixed;
	z-index: 999;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	align-items: center;
	justify-content: center;
}

#privacy {
	background: #fff;
	padding: 20px;
	max-width: 60%;
	max-height: 60%;
	overflow: auto;
	border-radius: 10px;
	box-shadow: 5px 5px 20px #555;
}
.privacy{
	text-align: center;
	cursor: pointer;
	text-decoration: underline;
}

#closeBtn {
	cursor: pointer;
	color: #007BFF;
	margin-top: 10px;
	display: block;
	text-align: center;
}

.card {
	display: flex;
	gap: 2rem;
	flex-wrap: wrap;
}
.card > *{
	border: solid 1px #ccc;
	box-shadow: 1em 1em 1em #ccc;
	text-align: center;
	padding: 1em;
	text-decoration: none;
	margin: 0 auto;
}
.card img{
	max-width: 300px;
	margin: 0 auto;
}

.hidden{
	display:none;
}

@media (min-width: 40em) { /* Desktop */
	.content{
		max-width: 50rem;
		margin: auto;
	}
}
@media only screen and (max-width: 600px) {
	.carousel_track li{
		width: 100px;
		padding: 0 2px;
	}
	.carousel{
		overflow-x: scroll;

	}
	.carousel_track li img{
		height: 10vh;
	}
	#privacy {
		padding: 20px;
		max-width: 90%;
		max-height: 90%;
	}
}
