:root {
	--color1:#ff8d00;
	--color2:#ccc;
	--color3:#fff;
	--color4:#fafafa;
	--color5:#d6d6d6;
}

body {
	margin: 0;
	padding: 0;
	font-family: 'Nunito', sans-serif;
}
div {
	font-family: 'Nunito', sans-serif;
}
a { color:black; background-color:inherit;}
h2 {
	text-align: center;
	font-size: 30px;
	color: #555;
	font-weight: bold;
}
p {
	font-size: 16px;
	color: #555;
	line-height: 1.6;
}
strong {
	font-weight: bold;
	color: var(--color1);
}
input, input:focus, *:focus { outline:none!important;  }

*, *:before, *:after {
	font-weight: normal;
	box-sizing: border-box;
}

.clearfix:after {
	display: block;
	height: 0;
	font-size: 0;
	content: " ";
	clear: both;
	visibility: hidden;
}
.col-1 {
	position:relative;
	float:left;
	width:8.333333%;
	min-height: 1px;
}
.col-2 {
	position:relative;
	float:left;
	width:16.666667%;
	min-height: 1px;
}
.col-3 {
	position:relative;
	float:left;
	width:25%;
	min-height: 1px;
}
.col-4 {
	position:relative;
	float:left;
	width:33.333333%;
	min-height: 1px;
}
.col-5 {
	position:relative;
	float:left;
	width:41.666665%;
	min-height: 1px;
}
.col-6 {
	position:relative;
	float:left;
	width:50%;
	min-height: 1px;
}
.col-7 {
	position:relative;
	float:left;
	width:58.333333%;
	min-height: 1px;
}
.col-8 {
	position:relative;
	float:left;
	width:66.666664%;
	min-height: 1px;
}
.col-9 {
	position:relative;
	float:left;
	width: 75%;
	min-height: 1px;
}
.col-10 {
	position:relative;
	float:left;
	width: 83.33333%;
	min-height: 1px;
}
.col-11 {
	position:relative;
	float:left;
	width: 91.666667%;
	min-height: 1px;
}
.col-12 {
	position:relative;
	display: inline-block;
	float:none;
	margin:0 auto;
	width:100%;
	min-height: 1px;
}
.container {
	max-width: 1280px;
	margin: 0 auto;
	position: relative;
}
.ctr {
	float: none!important;
	margin: 0 auto!important;
	display: block!important;
}
.loading {
	background: linear-gradient(to bottom right, var(--color3), var(--color1));
	background-color: var(--color3);
	font-family: 'Nunito', sans-serif;
	height: 100vh;
	left: 0;
	position: fixed;
	top: 0;
	width: 100vw;
	z-index: 9999999999999;

	h1 {
		background-color: rgba(255, 255, 255, 0.55);
		color: #666;
		font-size: 28px;
		height: 100vh;
		line-height: 1.5;
		margin: 0;
		padding: 37vh 15px 0;
		text-align: center;
	}
}
/* header */
.header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background-color: #fff;
	box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.15);
	min-height: 70px;
	z-index: 1001;
	padding: 0 0 0 15px;
}
.header .col-8 > a {
	text-decoration: none;
	font-size: 18px;
	color: #777;
	cursor: pointer;
	transition: .2s;
	display: block;
}
.header a img {
	max-height: 70px;
	width:auto;
	vertical-align: middle;
	margin-right: 13px;
}
.header a span {
	display: inline-block;
	position: relative;
	top: 2px;
}
.header .cta {
	display: block;
	text-align: center;
	text-decoration: none;
	font-size: 20px;
	color: #fff;
	background-color: var(--color1);
}
.header .cta, #website_mobile {
	background-color: var(--color1);
	color: var(--color2) !important;
}
.header .cta:hover > .overlay {
	width:100%;
	height:100%;
	position:absolute;
	background-color:#fff !important;
	opacity:0.3;
}
.hero {
	margin-top: 70px;
	padding: 40px 15px;
	background: linear-gradient(to bottom right, var(--color3), var(--color4) );
	background-color: var(--color3);
}
.hero .col-8 {
	background-color: #fff;
}
.hero .container {
	border-bottom: solid 3px #c1c1c1;
	box-shadow: 0 3px 15px 0 rgba(128, 128, 128, 0.4);
	background-color: #fff;
}
#additionalInfo_link a {
	text-decoration: none;
	color: #444;
	padding-top: 2px;
	font-weight: bold;
	letter-spacing: 0.5px;
}
#additionalInfo_link a:hover {
	text-decoration: underline;
}
.imageslider {
	background-color: #fff;
}
#photogallery {
	min-width: 100%;
}
#photogallery .lslide {
	background-color: #fbfaf6;
	min-height: 100%;
}
#photogallery img {
	margin: 0 auto;
	display: block;
}
.lSGallery li a {
	width: 100%;
	height: 120px;
	display: inline-block;
	overflow: hidden;
}
.lSGallery li a img {
	display: block!important;
	min-height: 120px!important;
	max-width: 100%!important;
}
.lSSlideOuter .lSPager.lSpg {
	margin: 8px 0 9px!important;
	padding: 0!important;
	text-align: center!important;
}
.hero .container > .col-4 {
	background-color: #ffffff;
}
.call {
	background-color: #fafafa;
	border-bottom:.55px solid var(--color1);
	color: #444;
	font-size: 1.25rem;
	line-height: 1.42;
	padding: 1.25em;

	strong, a {
		background-color: transparent;
	}
	a {
		color: inherit;
		font-weight: 600;
		text-decoration: none;
	}
	a span {
		font-weight: 600 !important;
		white-space: nowrap;
	}
	small {
		margin-top: .25em;
		display : block;
		font-size: .875rem;
		line-height:1.5
	}
	small.terms-and-privacy {
		margin-top: .5em;
		font-size: .825rem;

		a {
			font-weight: normal;
			text-decoration: underline;
		}
	}
}
.getintouchform .additional-info {
	display: none!important;
}

.getintouchform button[type="submit"]{
	width: 100%;
	height: 45px;
	border-radius: 4px;
	border: none;
	padding: 2px 0 0;
	font-size: 18px;
	color: #fff;
	font-weight: bold;
	background-color: var(--color1);
	margin: 0 auto;
	display: block;
	cursor: pointer;
	transition: .2s;
	border-bottom: solid 2px var(--color5);

	&:hover {
		background-color: var(--color5);
	}

	&:disabled,
	&:disabled:hover {
		opacity: .7;
		background-color: var(--color1);
	}
}

.mobile {
	align-items: center;
	background-color: #fff;
	border-top: solid 3px var(--color1);
	border-bottom:.55px solid var(--color1);
	display: flex;
	gap: 1rem;
	padding: 0 1rem;

	a {
		background-color:white;
		color: #444;
		display: inline-block;
		font-weight: bold;
		letter-spacing: 0.5px;
		line-height: 45px;
		padding: 0;
		text-decoration: none;
	}
}

.social {
	display: flex;
	gap: .5rem;
	justify-content: center;
	margin: 0 0 0 auto;

	a {
		color: var(--color2);
		align-items: center;
		background-color: var(--color5);
		border-radius: 50%;
		cursor:pointer;
		display: flex;
		height: 32px;
		justify-content: center;
		width: 32px;
	}
}

.manager {
	background-color: #fafafa;
	border-top: solid 1px #efefef;
	padding: 30px 0;
	margin-top: 15px;
}
.manager h2 {
	margin: 0;
	font-size: 20px;
}
.manager img {
	max-width: 200px;
	height: auto;
	margin: 0 0 0 15px;
	display: block;
	margin: 25px auto 0;
}
.location {
	padding: 10px 15px;
	background-color: #ffffff;
	border-top: solid 1px #efefef;
}
.location .map {
	position: relative;
}
.location .map:hover:after {
	background-color: rgba(0,0,0,.55);
	color: #fff;
}
.location .map.view:after {
	visibility: hidden;
}
.location .map + p {
	text-align: center;
	font-weight: bold;
	padding: 25px 0 0;
	font-size: 18px;
}
.address p {
	font-size: 18px;
	text-align: center;
	margin: 0 0 10px;
}
.address a {
	font-weight: bold;
	color: #666;
}
.footer {
	background-color: #ffffff;
	padding: 20px 0;
	border-top: solid 1px #dad8ce;
}
.footer p {
	text-align: center;
	color: #666;
	font-size: 15px;
	margin: 0;
}

#guestcardheader {
	background: rgba(255,0,0,0.75);
	font-size: 14px;
	text-align: center;
	position: absolute;
	top: 70px;
	padding:11px;
	color: white;
	width: 100%;
	z-index: 999;
}
.guestcard_scheduler > p, .timestep2 > p {
	font-weight: bold;
	text-align: center;
	padding: 0 18px;
	color: #313131;
	font-size: 15px;
	line-height: 1.5;
	background-color: #ffffff;
	margin: 0;
	padding: 10px 0;
	border-bottom: solid 1px #dedede;
	border-top: solid 1px #dedede;
}
.guestcard_scheduler > p span, .timestep2 > p span {
	display: inline-block;
	padding: 1px 0 0;
	border-radius: 50%;
	border: solid 1px #666;
	height: 25px;
	width: 25px;
	text-align: center;
	margin-right: 7px;
}
.timeoptions {
	padding: 10px 10px 0;
	background-color: #efefef;
}
#thedateselection {
	list-style: none;
	padding: 0;
	margin: 0;
	background-color: transparent;
}
#thedateselection li {
	line-height: 1.5;
	color: #444;
	font-weight: bold;
	cursor: pointer;
	transition: .2s;
	padding: 0 15px;
	border-bottom: solid 1px #c3c3c3;
	float: left;
	padding: 13px 10px 12px;
	background-color: #fff;
	text-align: center;
	display: block;
	color: #015ed8;
	padding: 16px 5px 13px;
}
#thedateselection li label {
	display: block;
	cursor: pointer;
	line-height: normal;
	font-size: 14px;
	font-weight: bold;
	color: #444;
}
#thedateselection li:hover {
	background-color: #e4e7ec;
	border-bottom-color: #a0afc7;
}
.timestep2 {
	display: none;
}
.timeoptions .lSPrev {
	display: none;
}
.main-wrap li:nth-child(n + 5) {
	margin-bottom: 0!important;
}
#thedateselection li.selected {
	border-bottom-color: #015ed8;
}
.timeoptions li.selected, .timeoptions li.selected:hover {
	color: #fff!important;
	background-color: #015ed8!important;
}
.timeoptions li.selected label, .timeoptions li.selected:hover label {
	color: #fff!important;
}
#thetimeselection {
	list-style: none;
	padding: 0;
	margin: 0;
	background-color: transparent;
}
#thetimeselection li {
	width: calc(20% - 8px);
	margin-right: 10px;
	margin-bottom: 10px;
	float: left;
	cursor: pointer;
	background-color: #fff;
	border-bottom: solid 1px #c3c3c3;
	padding: 16px 5px 13px;
	text-align: center;
	color: #015ed8;
	font-weight: bold;
	line-height: 1.5;
}
#thetimeselection li:nth-of-type(5n) {
	margin-right: 0;
}
#thetimeselection li label {
	display: block;
	cursor: pointer;
	line-height: normal;
	font-size: 14px;
	font-weight: bold;
	color: #444;
}
#thetimeselection li:hover {
	background-color: #e4e7ec;
	border-bottom-color: #a0afc7;
}
#findanotherday p {
	text-align: center;
	margin: 5px 0;
}
.timeconfirm .scheduletour > p {
	max-width: 90%;
	margin: 10px auto 0;
	border-radius: 2px;
	text-align: center;
	padding: 10px 0px 9px;
	border: solid 1px #015ed8;
	color: #fff;
	background-color: #015ed8;
	font-weight: bold;
	transition: .2s;
	cursor: pointer;
}
.timeconfirm.active .scheduletour.set {
	height: 85px;
}
.timeconfirm .scheduletour.set p, .timeconfirm .scheduletour.set p:hover {
	transition: 0s;
	background-color: transparent;
	color: #444;
	border: none;
}
.timeconfirm .scheduletour:not(.set) p + span {
	display:none;
}
.timeconfirm .scheduletour.set p + span {
	display: block;
	text-align: center;
	font-size: 15px;
	color: #015ed8;
	cursor: pointer;
	transition: .2s;
}
.timeconfirm .scheduletour.set p + span:hover {
	color: #444;
}
.timeconfirm .scheduletour.set p + span img {
	max-width: 20px;
	vertical-align: middle;
	position: relative;
	top: -2px;
	margin-right: 5px;
}
.timeconfirm .scheduletour {
	height: 0;
	overflow: hidden;
	transition: .2s;
	opacity: 0;
	border-top: solid 1px transparent;
}
.timeconfirm.active .scheduletour {
	opacity: 1;
	height: 68px;
	border-color: #c5c5c5;
}
.timeconfirm.active .scheduletour  {
	opacity: 1;
	height: 68px;
	border-color: #c5c5c5;
}
.timeconfirm .scheduletour > p span {
	font-weight: bold;
	cursor: pointer;
}
.timeconfirm .scheduletour > p:hover {
	background-color: #004bad;
}
.timeoptions .lSSlideWrapper {
	overflow: visible!important;
}
.timeoptions .lSSlideOuter .lSPager.lSpg > li {
	opacity: 0;
}
.timeoptions div.lSAction a {
	background-color: transparent;
	bottom: -40px;
	top: auto;
	width: auto;
	height: auto;
	color: #555;
	opacity: 1;
	padding: 15px 0;
	font-size: 15px;
	transition: .2s;
	cursor: pointer;
}
.timeoptions div.lSAction a:hover {
	color: #0055c5;
}
.timeoptions div.lSAction a:first-of-type {
	padding-left: 38px;
}
.timeoptions div.lSAction a:last-of-type {
	padding-right: 38px;
}
.timeoptions div.lSAction a:after {
	top: 21px;
	right: 20px;
	height: 8px;
	width: 8px;
	border-right: solid 2px #555;
	border-bottom: solid 2px #555;
}
.timeoptions + div.lSAction a:hover:after {
	border-color: #0055c5;
}
#guestcard_choosetime {
	display: block;
	font-weight: bold;
	color: #0167d7;
	margin-bottom: 5px;
	text-decoration: underline;
	transition: .2s;
	cursor: pointer;
	text-align:center;
}
#thedateselection li:hover {
	color: #0167d7;
}
.timeoptions p {
	margin: 0;
	text-align: center;
	background-color: #ffffff;
	padding: 18px 0;
	font-size: 15px;
	color: #444;
	font-weight: bold;
}
#scheduler_loading {
	text-align: center;
	padding: 37px;
}
#timeselect p {
	position: relative;
	font-weight: bold;
	color: #444;
	text-align: center;
	margin: 10px 0;
}
#timeselect input, #timeselect select {
	display: block;
	border-radius: 4px;
	border: solid 1px #b3b3b3;
	padding: 8px 10px;
	font-size: 15px;
	color: #444;
	margin-bottom: 7px;
	width: 100%;
	outline: none!important;
	font-weight: bold;
}
.scheduler_personal-info, #WLschedtime_dropdown {
	padding: 5px 12px;
}
#timeselect button {
	display: block;
	border-radius: 4px;
	padding: 8px 0 6px;
	font-size: 15px;
	color: #444;
	width: 100%;
	text-align: center;
	background-color: #ff7300;
	border: none;
	color: #fff;
	font-size: 16px;
	border-bottom: solid 2px #ce6a03;
	outline: none;
	transition: .2s;
	cursor: pointer;
}
#timeselect button:hover {
	background-color: #ef6000;
}
#dateselect {
	text-align: center;
}
#thecontactform p.thankyou {
	text-align: center;
	font-weight: bold;
	color: #ff7300;
	margin: 11px 10px 5px 9px;
	font-size: 18px;
}
#thecontactform p.thankyou + p {
	margin: 6px;
	text-align: center;
	font-size: 14px;
	color: #444;
}
#dateselect p {
	text-align: center;
	font-weight: bold;
	color: #444;
	font-size: 15px;
}
.missedfield {
	border: solid 1px red !important;
}
#WLscheddate {
	padding: 10px 10px 9px;
	border-radius: 4px;
	border: solid 1px #c8c8c8;
	color: #444;
	font-size: 15px;
	text-align: center;
	display: inline-block;
	width: 150px;
	margin-top: -5px;
	font-weight: bold;
	cursor: pointer;
	transition: .2s;
}
.notavailabledate {
	background-color: lightgrey !important;
	background: linear-gradient(to left top, transparent 49.75%, red 49.5%, red 50.5%, transparent 51.25%);
	cursor:auto !important;
}
.chatpushup {
	bottom:29px !important;
}
.lSAction > a {
	background-color: inherit!important;
}
.lSAction > a:after {
	border-right: solid 3px #000!important;
	border-bottom: solid 3px #000!important;
}
.lslide img { max-width:100%;}
.navbuttons,.homebutton,.phonenum,
.additionalInfo,.control-label, a {
	color:#444;
	background-color:white;
}
#ws-walkscore-tile {
	display: flex;
	justify-content: center;
	iframe {
		max-width: 48rem;
	}
}
.close {
	color: #aaa;
	float: right;
	font-size: 28px;
	font-weight: bold;
}

.close:hover,
.close:focus {
	color: black;
	text-decoration: none;
	cursor: pointer;
}
#ws-walkscore-tile{
	position:relative;
	text-align:left
}
#ws-walkscore-tile * {
	float:none;
}
#map-video-tabs,
#map-video-tabs .nav-link {
	border: none;
	background-color: transparent;
	color : #777;
	font-weight : bold;
}
#map-video-tabs .nav-link.active {
	border-bottom:4px solid #ddd;
	color : #222;
}
#map-video-panes :is(iframe,video){
	width: 100%;
	border: none;
	height: 450px;
	box-shadow: 0 .125rem .25rem rgba(0,0,0,.075);
}
#map-video-panes video {
	width : auto;
	margin : 0 auto;
	height: 450px;
	aspect-ratio: 16/ 9;
}
.grecaptcha-badge{visibility:hidden;}

.guestcardheader_mobile {
	padding-top: 35px!important;
	padding-bottom: 17px!important;
}
#guestcardheader {
	background: rgba(255,0,0,0.75);
	font-size: 14px;
	text-align: center;
	position: absolute;
	top: 70px;
	padding:11px;
	color: white;
	width: 100%;
	z-index: 999;
}
.otherpropertiesdiv {
	text-align: center;
	min-height: 150px;
	margin: 0px;
	border: 1px solid #b5b5b5;
	letter-spacing:1.1px;
	margin:8px;
}
.otherpropertiesdiv2 {
	text-align: center;
	margin: 0px;
	border: 1px solid #b5b5b5;
	letter-spacing:1.1px;
	margin:2px;
}
.otherproperties {
	padding: 6px;
	min-height: 235px;
}
.otherpropertiesdiv2 > .otherproperties { font-size:10px;min-height: 145px;}
.otherpropname { bottom: 12px; position: absolute;margin: auto;width: 100%;left: 0px; }

.propertyboxes {padding:5px!important;}

.bigmodalcontent {
	width:100%!important;
}
#additionalpropdiv {
	max-height: 320px;
}
#map_canvas {
	min-height:160px;
	min-width:160px;
	height:300px;
	width:100%;
	margin-top: 10px;
}
.thehighligtedrow { background-color:#faf7d3 !important }

#cookieaccept {
	background: rgba(0,0,0,0.75);
	font-size: 14px;
	text-align: center;
	height: 35px;
	padding-top: 7px;
	color: white;
	position: fixed;
	bottom: 0px;
	width: 100%;
	z-index: 1000;
}

.hero > .container {
	padding: 0;
}

#contact-and-slides{
	flex-wrap: nowrap;
	display:flex;
	gap:0;
	& > div:first-child {
		width:35%;
		border-right: .55px solid var(--color1);

		form {
			padding:2rem;
			max-width: 40rem;
		}
	}
	& > div:last-child {
		width:65%;
	}
}

#sched_timepicker_error,
#theerrormessage {
	margin: 0px 0 1rem 0;
	padding: 1rem;
	border: 1px solid rgb(204, 51, 51);
	background-color: rgb(255, 204, 204);
}
#sched_timepicker_error:is(:empty),
#theerrormessage:is(:empty) {
	display: none;
}

body:not(:has(#walkscorearea)){
	#neighborhoodlink {display:none;}
}


@media (max-width: 1200px) {
	.otherproperties {
		min-height: 200px;
	}
}

@media (max-width: 1100px) {
	#contact-and-slides{
		& > div:first-child {
			width:38%;
		}
		& > div:last-child {
			width:62%;
		}
	}
}

@media (min-width : 961px) {
	.onlymobile {
		display:none !important;
	}
}

@media (max-width: 960px) {
	.mobile {
		flex-direction: column;
		gap: 0;
		padding: 0;
		& > a {
			width:100%;
			text-align: center;
			border-bottom:.55px solid var(--color1);
			background-color: #fff;
			color: #444;
			line-height: 45px;
		}
		.social {
			margin: 0;
			padding: .5rem 0;
		}
	}

	#contact-and-slides {
		flex-direction: column;
		gap: 0;
		& > div:first-child .call {
			text-align: center;
			border-right: none;
		}
		& > div {
			width:100% !important;
		}
	}

	.res {
		width: 100%!important;
	}
	.loading h1 {
		font-size: 18px;
	}
	.hero {
		padding: 20px 15px 30px;
	}
	.header .col-4 a {
		display: none;
	}
	.lSGallery {
		display: none!important;
	}
	#photogallery {
		height: 400px!important;
		min-width: 100%;
	}
	#photogallery img {
		max-height: 400px;
	}
	.map iframe {
		height: 400px!important;
	}
	.call a {
		text-align: center;
		padding-left: 0;
	}
	.otherproperties {
		min-height: 185px;
	}
}

@media (max-width: 800px) {
	.location .map:after {
		line-height: 400px;
	}
	#photogallery {
		height: 400px!important;
		min-width: 100%;
	}
	#photogallery img {
		max-height: 400px;
	}
	.map iframe {
		height: 400px!important;
	}
	.manager {
		background-color: #fff;
		border-top: solid 1px #efefef;
		padding: 50px 0;
		margin: 15px 0 10px;
	}
	.manager h2 {
		font-size: 18px;
	}
}

@media (min-width: 768px) {
	.modal-xl {
		width: 90%!important;
		max-width:1200px;
	}

	#additionalpropdiv {
		max-height: 520px!important;
	}

	#map_canvas {
		height:500px!important;
	}

}

@media( max-width:720px ){
	#map-video-panes :is(iframe,video){
		width: 100%;
		height: auto;
		aspect-ratio: 16/ 9;
	}
}

@media screen and (max-width: 600px) {
	.header a img {
		max-height:84px;
	}
	.header .col-8 span {
		display: none;
	}
	.footer p {
		padding: 0 15px;
	}
	.location .map:after {
		line-height: 320px;
	}
	#photogallery {
		height: 320px!important;
		min-width: 100%;
	}
	#photogallery img {
		max-height: 320px;
	}
	.map iframe {
		height: 320px!important;
	}

	#guestcardheader {
		top: 78px;
	}
}

@media screen and (max-width: 320px) {
	.lSAction > a {
		width: 35px;
	}
	.location .map:after {
		line-height: 275px;
	}
	#photogallery {
		height: 275px!important;
		min-width: 100%;
	}
	#photogallery img {
		max-height: 275px;
	}
	.map iframe {
		height: 275px!important;
	}
}