/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media screen {
	
	/* -- overall text formatting -- */
	
	html {
		height:100%;
	}
	
	body {
		margin:0;
		font-family:sans-serif;
		font-size:16px;
		font-weight:300;
		line-height:130%;
		color:#222;
	}
	
	.site_maxwidth {
		width:100%;
		max-width:1920px;
		margin:0 auto;
		background-color:#fff;
	}
	
	.panel_maxwidth {
		width:90%;
		max-width:1600px;
		margin:0 auto;
	}
	
	.vertical_padding {
		padding:40px 0;
	}
		
	h1,h2,h3,h4 {
		line-height:105%;
	}
	
	h1 {
		font-size:2em;
	}
	
	h2 {
		font-size:1.8em;
	}
	
	h3 {
		font-size:1.6em;
	}
	
	h4 {
		font-size:1.2em;
	}
	
	a {
		color:#333;
	}
	
	p:first-child,
	h1:first-child,
	h2:first-child,
	h3:first-child,
	h4:first-child,
	h5:first-child {
		margin-top:0;
	}
	
	p:last-child,
	h1:last-child,
	h2:last-child,
	h3:last-child,
	h4:last-child,
	h5:last-child {
		margin-bottom:0;
	}
	
	.basic_content figure {
		margin:24px 0;
	}
	
	.basic_content figure img {
		width:auto;
		height:auto;
		max-width:100%;
		vertical-align:top;
	}
	
	.basic_content figure figcaption {
		padding:12px 0;
		border-bottom:1px solid #ddd;
		font-size:0.9em;
	}
	
	.fancybox-bg {
		background-color:#222;
	}
	
	.fancybox-is-open .fancybox-bg {
		opacity:0.95;
	}
	
	/* -- buttons -- */
	
	.standard_button {
		display:inline-block;
		line-height:105%;
		padding:12px 16px;
		background-color:#222;
		color:#fff;
		text-decoration:none;
	}
	
	/* -- form style -- */
	
	.form {
		
	}
	
	.form * {
		box-sizing:border-box;
	}
	
	.form .row {
		
	}
	
	.form .row.hidden {
		display:none;
		visibility:hidden;
	}
	
	.debugmode .form .row.hidden {
		display:block;
		visibility:visible;
		opacity:0.25;
	}
	
	.form .row .field {
		margin-bottom:16px;
	}
	
	.form .row .field.full {
		
	}
	
	.form .row .field.half {
		
	}
			
	.form input[type='text'],
	.form input[type='email'],
	.form input[type='number'],
	.form input[type='tel'],
	.form input[type='password'],
	.form input[type='text']{
		width:100%;
		height:40px;
		line-height:40px;
		padding:0 12px;
		border:1px solid #ccc;
		font-weight:300;
		box-shadow:none;
	}
	
	.form input[type='text']:focus,
	.form input[type='email']:focus,
	.form input[type='number']:focus,
	.form input[type='tel']:focus,
	.form input[type='password']:focus,
	.form input[type='text']:focus {
		border-color:#999;
		outline:2px solid rgba(0,0,0,0.1);
		box-shadow:none;
	}
	
	.form input[type='checkbox'],
	.form input[type='radio'] {
		display:inline-block;
		margin-right:4px;
	}
	
	.form input[type='checkbox']:focus,
	.form input[type='radio']:focus {
		
	}
	
	.form input[type='submit'],
	.form input[type='button'] {
		height:40px;
		padding:0 16px;
		background-color:#222;
		color:#fff;
		text-decoration:none;
		line-height:105%;
		border:none;
		font-weight:700;
		cursor:pointer;
	}
	
	.form input[type='submit']:focus,
	.form input[type='button']:focus {
		outline:2px solid rgba(0,0,0,0.1);
	}
	
	.form input[type='submit']:disabled,
	.form input[type='button']:disabled {
		opacity:0.5;
	}
	
	.form.submitting input[type='submit'] {
		opacity:0.25;
	}
	
	.form textarea {
		width:100%;
		min-height:160px;
		resize:vertical;
		border:1px solid #ccc;
		font-weight:300;
		padding:12px;
		box-shadow:none;
	}
	
	.form textarea:focus {
		border-color:#999;
		outline:2px solid rgba(0,0,0,0.1);
		box-shadow:none;
	}
	
	.form select {
		width:100%;
		height:40px;
		border:1px solid #ccc;
		padding:0 8px;
		font-weight:300;
	}
	
	.form select:focus {
		border-color:#999;
		outline:2px solid rgba(0,0,0,0.1);
	}
	
	.form select::-ms-expand {
		border:1px solid #ccc;
	}
	.form select:-moz-focusring {
		border:1px solid #ccc;
	}
	
	.form label {
		display:inline-block;
		margin-bottom:2px;
	}
	
	.form .req {
		color:#999;
		font-weight:300;
	}
	
	.form label.checkbox {
		display:table;
		height:24px;
		line-height:24px;
		margin:0;
	}
	
	.form label.checkbox .input {
		display:table-cell;
		vertical-align:top;
		padding:6px 4px 6px 0;
		line-height:100%;
	}
	
	.form label.checkbox .text {
		display:table-cell;
		vertical-align:top;
		line-height:105%;
		padding:6px 0;
	}
	
	.table_wrap {
		position:relative;
		max-width:100%;
		overflow-x:scroll;
	}
	
	.form .message_done {
		display:none;
	}
	
	.form.submitted .message_done {
		display:block;
		background-color:#f5f5f5;
		border:1px solid #ccc;
		padding:32px;
		margin:0 0 32px 0;
	}
	
	.form.submitted .row {
		display:none;
	}
	
	.form .submitting {
		visibility:hidden;
	}

	.form .submitted {
		visibility:hidden;
	}

	.form[data-status='submitting'] .submitting {
		visibility:visible;
	}

	.form[data-status='submitted'] .submitted {
		visibility:visible;
	}

	.form .error_message {
		display:none;
		background-color:#fcc;
		color:#c00;
		padding:8px;
	}

	.form .field.error .error_message {
		display:block;
	}

	.form .lds-ripple div {
		border-color:#444;
	}

	.form .form_messages {

	}

	.form .form_messages .message {
		display:none;
		background-color:#f5f5f5;
		border:1px solid #ddd;
		margin:0 0 8px 0;
	}

	.form .form_messages .message.show {
		display:block;
	}

	.form .form_messages .message .inner {
		display:table;
		width:100%;
	}

	.form .form_messages .message .icon {
		display:table-cell;
		vertical-align:middle;
		padding:16px 0 16px 16px;
	}

	.form .form_messages .message .icon img {
		width:auto;
		height:auto;
		max-width:24px;
		max-height:24px;
	}

	.form .form_messages .message .text {
		display:table-cell;
		vertical-align:middle;
		padding:16px;
		width:100%;
	}

	.form .form_messages .message h2 {
		margin:0 0 8px 0;
		font-size:1.2em;
	}

	.form .form_messages .message p {
		margin:0;
	}

	.form .form_messages .message.success {
		border-color:#8cbf8c;
		background-color:#e5f2e5;
	}

	.form .form_messages .message.error {
		border-color:#ce9b9b;
		background-color:#f6e2e2;
	}
	
	/* -- popups -- */
	
	.popup {
		width:100%;
		max-width:640px;
	}
	
	.popup .popup_header {
		border-bottom:1px solid #ddd;
		padding-bottom:32px;
		margin-bottom:32px;
	}
	
	.popup .popup_header h2 {
		font-size:1.4em;
		margin:0 0 8px 0;
	}
	
	.popup .popup_header p {
		margin:0;
	}
		
	.popup .popup_main {
		
	}
	
	.popup .popup_footer {
		border-top:1px solid #ddd;
		padding-top:32px;
		margin-top:32px;
	}
	
	.popup .popup_footer p {
		margin:8px 0;
	}
	
	.popup .popup_footer p.small {
		font-size:0.9em;
		color:#666;
	}
		
	.popup[data-status='onHold'] .available {
		display:none;
	}
	
	.popup[data-status='available'] .hold {
		display:none;
	}
	
	.popup .status_circle {
		display:inline-block;
		width:16px;
		height:16px;
		background-color:#ccc;
		border:1px solid #999;
		border-radius:50%;
		margin-right:8px;
		vertical-align:middle;
	}
	
	.popup[data-status='onHold'] .status_circle {
		background-color:#fceaa5;
		border-color:#b29f5c;
	}
	
	.popup[data-status='available'] .status_circle {
		background-color:#afda94;
		border-color:#678457;
	}
		
	/* -- news -- */
	
	.news_panel {
		background-color:#eee;
	}
	
	.news_list {
		display:flex;
		flex-direction:column;
		margin:-8px;
	}
	
	.news_list .empty_message {
		margin:8px;
	}
	
	.news_list .news_item {
		display:flex;
		flex-direction:column;
		background-color:#fff;
		margin:8px;
	}
	
	.news_list .news_item .image {
		position:relative;
		display:block;
		width:100%;
		height:160px;
		background-size:cover;
		background-position:center center;
		background-color:#ccc;
	}
	
	.news_list .news_item .image img {
		display:none;
	}
	
	@supports (object-fit:cover) {
				
		.news_list .news_item .image img {
			display:block;
			position:absolute;
			top:0;
			right:0;
			bottom:0;
			left:0;
			width:100%;
			height:100%;
			object-fit:cover;
		}
		
	}
	
	.news_list .news_item .text {
		padding:16px;
	}
	
	.news_list .news_item .text .date {
		font-size:0.8em;
		color:#999;
		margin:0 0 4px 0;
	}
	
	.news_list .news_item .text h1 {
		font-size:1.4em;
		margin:0 0 8px 0;
		max-width:768px;
		line-height:105%;
	}
	
	.news_list .news_item .text h1 a {
		text-decoration:none;
	}
	
	.news_list .news_item .text .excerpt {
		margin:8px 0;
		max-width:768px;
		line-height:120%;
	}
	
	.news_list .news_item .text .standard_button {
		margin:8px 0 0 0;
		padding:8px 12px;
	}
	
	.pagination {
		padding:0;
		margin:32px 0 0 0;
	}
	
	.pagination li {
		list-style:none;
		display:inline-block;
	}
	
	.pagination li a {
		display:inline-block;
		height:32px;
		line-height:32px;
		padding:0 8px;
		text-decoration:none;
		background-color:#ffff;
		font-size:0.9em;
	}
	
	.pagination li a.disabled {
		color:#999;
		background-color:#f5f5f5;
	}
		
	.news_article .panel_maxwidth {
		max-width:600px;
	}
	
	.news_article h1 {
		margin:0 0 12px 0;
	}
	
	.news_article .subline {
		margin:16px 0;
		font-size:0.9em;
		color:#999;
	}
	
	/* -- land maps -- */
	
	.land_map {
		width:100%;
		height:100%;
	}

	.land_map svg {

	}

	.land_map svg image {

	}
	
	.land_map svg a {
		transition:fill 0.2s;
		stroke-width:0;
	}
	
	/* map sidebar */
	
	.land_map_panel .main {
		margin-bottom:32px;
	}
	
	.land_map_panel .sidebar {
		max-width:320px;
	}
	
	.land_map_panel .sidebar_actions {
		display:flex;
		flex-wrap:wrap;
		margin:-4px;
		margin-bottom:4px;
	}
	
	.land_map_panel .sidebar_actions .action_item {
		flex:1 1 auto;
		display:block;
		background-color:#eee;
		color:#222;
		text-decoration:none;
		margin:4px;
		padding:8px 16px;
		white-space:nowrap;
	}
	
	.land_map_panel .sidebar_actions .action_item .icon {
		display:inline-block;
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		margin:0 8px 0 0;
		vertical-align:middle;
	}
	
	.land_map_panel .sidebar_item {
		margin-bottom:8px;
		padding:16px;
		background-color:#f5f5f5;
	}
	
	.land_map_panel .sidebar_item h2 {
		font-size:1.1em;
		margin:0 0 0.5em 0;
		color:#444;
	}
	
	.land_map_panel .sidebar_item h2 img {
		display:inline-block;
		vertical-align:bottom;
		height:16px;
		width:auto;
		margin-right:8px;
	}
	
	.land_map_panel .sidebar_item p {
		font-size:0.9em;
		margin:0.75em 0;
		line-height:120%;
		color:#666;
	}
	
	.land_map_panel .sidebar_item .button {
		display:inline-block;
		background-color:#e5e5e5;
		color:#444;
		padding:8px;
		font-size:0.8em;
		font-weight:500;
		line-height:105%;
		text-decoration:none;
	}
	
	.map_key td:nth-child(1) {
		padding-right:4px;
	}
	
	.map_key .swatch {
		display:inline-block;
		width:12px;
		height:12px;
		background-color:transparent;
		border:1px solid #ddd;
	}
	
	.map_key .swatch.available {
		background-color:#afda94;
		border-color:#678457;
	}
	
	.map_key .swatch.hold {
		background-color:#fceaa5;
		border-color:#b29f5c;
	}
	
	.map_key .swatch.sold {
		background-color:#e3a7a1;
		border-color:#926662;
	}
	
	.map_key .swatch.blank {
		background-color:#fdfaf3;
		border-color:#bdb8a9;
	}
	
	.map_key .swatch.easement {
		border:1px dashed #00AEEF;
	}
	
	.map_key .swatch.letter {
		border:none;
		background-color:#222;
		color:#fff;
		border-radius:50%;
		width:16px;
		height:16px;
		line-height:16px;
		text-align:center;
		font-size:0.7em;
		font-weight:700;
	}
	
	.map_key .icon {
		display:inline-block;
		width:auto;
		height:auto;
		max-width:14px;
		max-height:14px;
	}
		
	.land_map svg a.stage.under {
		fill:rgba(70,186,28,0.4);
		color:rgba(70,186,28,0.4);
		stroke:rgba(70,186,28,1);
		stroke-width:2px;
	}

	.land_map svg a.stage.over {
		fill:rgba(70,186,28,0);
		color:rgba(70,186,28,0);
	}

	.land_map svg a.stage.under[data-remaining-lots='0'] {
		fill:rgba(201,59,61,0.4);
		color:rgba(201,59,61,0.4);
		stroke:rgba(201,59,61,1);
		stroke-width:2px;
	}

	.land_map svg a.stage.over[data-remaining-lots='0'] {
		fill:rgba(201,59,61,0);
		color:rgba(201,59,61,0);
	}
	
	.land_map svg a.special.under {
		fill:rgba(28,186,147, 0.4);
		color:rgba(28,186,147, 0.4);
		stroke:rgba(28,186,147,1);
		stroke-width:2px;
	}
	
	.land_map svg a.special.over {
		fill:rgba(28,186,147, 0);
		color:rgba(28,186,147, 0);
	}
		
	.land_map svg a.lot.under {
		fill:rgba(70,186,28,0.4);
		color:rgba(70,186,28,0.4);
	}

	.land_map svg a.lot.over {
		fill:rgba(70,186,28,0);
		color:rgba(70,186,28,0);
	}
	
	.land_map svg a.lot.under[data-status='onHold'] {
		fill:rgba(252,211,71,0.4);
		color:rgba(252,211,71,0.4);
	}

	.land_map svg a.lot.over[data-status='onHold'] {
		fill:rgba(252,211,71,0);
		color:rgba(252,211,71,0);
	}
	
	.land_map svg a.houseland_icon image {
		display:none;
	}
	
	.land_map svg a.houseland_icon.has_package image {
		display:inline-block;
	}
	
	#stage_tooltip {
		position:fixed;
		background-color:rgba(255,255,255,0.95);
		border:1px solid #ccc;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
		padding:24px;
	}
	
	#stage_tooltip .stage_name {
		font-weight:700;
		font-size:18px;
		margin:0 0 8px 0;
	}
	
	#stage_tooltip .lots_remaining {
		font-weight:300;
		font-size:16px;
		color:#666;
	}
	
	#special_tooltip {
		position:fixed;
		background-color:rgba(255,255,255,0.95);
		border:1px solid #ccc;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
		padding:24px;
	}
	
	#special_tooltip .headline {
		font-weight:700;
		font-size:18px;
		margin:0 0 8px 0;
	}
	
	#special_tooltip .subline {
		font-weight:300;
		font-size:16px;
		color:#666;
	}
	
	/* -- allotment -- */
	
	.lot_diagram svg polygon {
		fill:#c1da9e;
		stroke:#9aad80;
		stroke-width:2px;
	}
	
	#allotment_tooltip {
		position:fixed;
		background-color:rgba(255,255,255,0.95);
		border:1px solid #ccc;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
		padding:24px;
		max-width:256px;
		width:256px;
	}
	
	#allotment_tooltip .name {
		font-weight:900;
		margin:0 0 8px 0;
	}
	
	#allotment_tooltip .area_price {
		margin:0 0 4px 0;
		color:#666;
	}
	
	#allotment_tooltip .area {
		display:inline-block;
		margin:0 16px 0 0;
	}
	
	#allotment_tooltip .price {
		display:inline-block;
	}
	
	#allotment_tooltip .status {
		margin:0 0 4px 0;
		font-size:0.9em;
	}
	
	#allotment_tooltip .status[data-status='available'] {
		color:#64b729;
	}
	
	#allotment_tooltip .status[data-status='available']:before {
		display:inline-block;
		content:'';
		border-radius:50%;
		width:12px;
		height:12px;
		background-color:#64b729;
		margin:0 4px 0 0;
	}
	
	#allotment_tooltip .status[data-status='onHold'] {
		color:#e4af03;
	}
	
	#allotment_tooltip .status[data-status='onHold']:before {
		display:inline-block;
		content:'';
		border-radius:50%;
		width:12px;
		height:12px;
		background-color:#e4af03;
		margin:0 4px 0 0;
	}
	
	#allotment_tooltip .packages {
		color:#00afec;
		font-size:0.9em;
	}
	
	#allotment_tooltip .packages:before {
		display:inline-block;
		content:'';
		width:16px;
		height:16px;
		background-image:url('../images/icons/icon_house_blue.svg');
		background-size:contain;
		margin-right:4px;
		background-repeat:no-repeat;
	}
	
	/* -- allotment detal -- */
	
	.lot_info_panel .panel_maxwidth {
		max-width:1024px;
	}
	
	.lot_info_panel .text {
		
	}
	
	.lot_info_panel .text h1 {
		font-size:1em;
		margin:0 0 8px 0;
		color:#444;
	}
	
	.lot_info_panel .text h1 .large {
		font-size:2em;
		line-height:105%;
	}
	
	.lot_info_panel .text h1 .small {
		font-size:1.1em;
		line-height:105%;
		font-weight:500;
		color:#999;
	}
	
	.lot_info_panel .text .details {
		margin:0;
	}
	
	.lot_info_panel .text .details div {
		display:inline-block;
		margin:8px 12px 8px 0;
		color:#666;
	}
		
	.lot_info_panel .text .details .price {
		font-weight:700;
	}
	
	.lot_info_panel .text .status {
		margin:8px 0 16px 0;
	}
	
	.lot_info_panel .text .status .inner {
		color:#999;
	}
	
	.lot_info_panel .text .status .inner:before {
		display:inline-block;
		content:'';
		width:12px;
		height:12px;
		border-radius:50%;
		margin:0 4px 0 0;
		background-color:#999;
	}
	
	.lot_info_panel .text .status .inner.available {
		color:#64b729;
	}
	
	.lot_info_panel .text .status .inner.available:before {
		background-color:#64b729;
	}
	
	.lot_info_panel .text .status .inner.hold {
		color:#e4af03;
	}
	
	.lot_info_panel .text .status .inner.hold:before {
		background-color:#e4af03;
	}
	
	.lot_info_panel .text .houseland_note a {
		color:#00afec;
		text-decoration:none;
		font-size:0.9em;
	}
	
	.lot_info_panel .text .houseland_note img {
		display:inline-block;
		margin:0 4px 0 0;
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.lot_info_panel .text .affordable_note a {
		color:#666;
		font-size:0.8em;
	}
	
	.lot_info_panel .text .affordable_note img {
		max-width:24px;
		max-height:20px;
		margin-right:8px;
	}
	
	.lot_info_panel .text .buttons {
		margin:12px 0 0 0;
	}
	
	.lot_info_panel .text .button {
		display:inline-block;
		line-height:100%;
		padding:12px 16px;
		background-color:#222;
		color:#fff;
		font-weight:500;
		font-size:0.9em;
		text-decoration:none;
	}
	
	.lot_info_panel .text .button.primary {
		
	}
	
	.lot_info_panel .text .button.secondary {
		background-color:#eee;
		color:#666;
	}
		
	.lot_info_panel .diagram {
		
	}
	
	.lot_info_panel .lot_diagram {
		width:100%;
		height:100%;
		max-width:420px;
		max-height:420px;
	}
	
	/* -- house listings -- */
	
	#listing_filter {
		background-color:#f5f5f5;
		padding:32px 0;
	}
	
	#listing_filter .items {
		display:flex;
		flex-direction:column;
		flex-wrap:wrap;
		margin:-16px;
	}
	
	#listing_filter .items.hide {
		opacity:0.25;
	}
	
	#listing_filter .item {
		position:relative;
		margin:16px 32px;
	}
		
	.house_listings {
		background-color:#eeeeee;
	}
	
	.house_listings .panel_maxwidth {
		max-width:1024px;
	}
	
	.listing_items {
		padding:0;
		margin:-8px;
		min-height:100vh;
	}
	
	.allotment_house_and_land .listing_items {
		min-height:auto;
	}
	
	.listing_items .item {
		list-style:none;
		padding:8px;
	}
	
	.listing_items .item.hide {
		display:none;
	}
	
	.listing_items .item .inner {
		display:flex;
		flex-direction:column;
		background-color:#fff;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
		text-decoration:none;
	}
	
	.listing_items .item .image {
		background-color:#ccc;
	}
	
	.listing_items .item .image img {
		vertical-align:top;
		width:100%;
		height:auto;
	}
	
	.listing_items .item .text {
		padding:24px;
	}
	
	.listing_items .item  h3 {
		line-height:100%;
		margin:0 0 12px 0;
	}
	
	.listing_items .item h3 .big {
		display:block;
		font-size:0.8em;
		font-weight:700;
		color:#444;
		line-height:100%;
		margin:0 0 8px 0;
	}
	
	.listing_items .item h3 .small {
		display:block;
		font-size:16px;
		font-weight:500;
		font-style:italic;
		color:#999;
		line-height:100%;
	}
	
	.listing_items .item .info {
		margin:16px 0;
	}
	
	.listing_items .item .rooms {
		display:block;
		margin:0 24px 12px 0;
	}
	
	.listing_items .item .rooms .room {
		display:inline-block;
		margin:0 12px 0 0;
	}
	
	.listing_items .item .rooms .room .number {
		display:inline-block;
		font-size:20px;
		font-weight:900;
		color:#444;
		margin:0 4px 0 0;
	}
	
	.listing_items .item .rooms .room .icon {
		display:inline-block;
		color:#999;
	}
	
	.listing_items .item .rooms .room .icon img {
		width:auto;
		height:auto;
		max-width:24px;
		max-height:20px;
	}
	
	.listing_items .item .price {
		display:block;
		font-size:20px;
		font-weight:500;
		color:#666;
	}
	
	.listing_items .item .price .deposit {
		display:inline-block;
		font-size:0.75em;
		color:#999;
		font-weight:300;
		padding:4px 8px;
		border:1px solid #eee;
		margin-left:16px;
	}
	
	.listing_items .item .readmore {
		color:#f25822;
		color:#444;
		font-weight:700;
		text-transform:uppercase;
	}
		
	/* -- allotment table -- */
	
	.allotment_table {
		font-size:0.9em;
		width:auto;
		border-collapse:collapse;
		margin:0 auto;
	}
	
	.allotment_table a {
		text-decoration:none;
	}
	
	.allotment_table th {
		position:relative;
		background-color:#444;
		color:#fff;
		padding:8px 24px;
		text-align:left;
		font-weight:500;
		white-space:nowrap;
	}
	
	.allotment_table th.sorting:after {
		position:absolute;
		display:inline-block;
		margin-left:4px;
		vertical-align:middle;
		font-size:0.5em;
	}
	
	.allotment_table th.sorting.asc:after {
		content:'▼';
		transform:translate(0,2px);
	}
	
	.allotment_table th.sorting.desc:after {
		content:'▲';
		transform:translate(0,1px);
	}
	
	.allotment_table.sortable th {
		cursor:pointer;
	}
	
	.allotment_table td {
		background-color:#fff;
		color:#222;
		padding:8px 24px;
		border-bottom:1px solid #eee;
		white-space:nowrap;
	}
	
	.allotment_table tr:nth-child(2n) td {
		background-color:#f5f5f5;
	}
	
	.allotment_table tr[data-status='onHold'] td {
		color:#666;
		font-weight:300;
	}
	
	.allotment_table tr[data-status='onHold'] td a {
		color:#666;
	}
	
	.allotment_table tr[data-status='available'] td {
		color:#222;
		font-weight:500;
	}
	
	.allotment_table .lotnum {
		width:48px;
	}
	
	.allotment_table .status .dot {
		display:inline-block;
		width:12px;
		height:12px;
		background-color:#ccc;
		border-radius:50%;
		margin:0 4px 0 0;
	}
	
	.allotment_table tr[data-status='available'] .status {
		color:#0db14b;
	}
	
	.allotment_table tr[data-status='available'] .dot {
		background-color:#0db14b;
	}
	
	.allotment_table tr[data-status='onHold'] .status {
		color:#f6a01f;
	}
	
	.allotment_table tr[data-status='onHold'] .dot {
		background-color:#f6a01f;
	}
	
	.allotment_table .action {
		text-align:right;
	}
	
	.allotment_table .action .houseland_icon img {
		display:none;
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		margin:0 8px 0 0;
		vertical-align:middle;
	}
	
	.allotment_table .action .houseland_icon.has_package img {
		display:inline-block;
	}
	
	.allotment_table .action .button {
		display:inline-block;
		padding:8px;
		color:#222;
		text-decoration:none;
		font-weight:700;
		font-size:0.8em;
		line-height:100%;
	}
	
	.allotment_table tr[data-status='onHold'] .action .button {
		color:#999;
	}
	
	.allotment_table .action .button:after {
		display:inline-block;
		content:'›';
		margin-left:4px;
	}
	
	.allotment_table .action .button.hold {
		border:1px solid #ddd;
	}
	
	/* -- land contact panel -- */
	
	.land_contact_panel {
		background-color:#fff;
	}
	
	.land_contact_panel .panel_maxwidth {
		max-width:1024px;
	}
	
	.land_contact_panel h2 {
		font-size:1.4em;
		margin:0 0 16px 0;
	}
	
	.land_contact_panel .left {
		margin-bottom:32px;
		padding-bottom:32px;
		border-bottom:1px solid #ddd;
	}
		
	.land_contact_panel .salesperson_compact {
		margin-bottom:16px;
	}
	
	.land_contact_panel .salesperson_compact:last-child {
		margin:0;
	}
		
	.land_contact_panel .item p {
		font-size:0.9em;
		line-height:120%;
	}
	
	.land_contact_panel .register {
		margin-bottom:32px;
		padding-bottom:32px;
		border-bottom:1px solid #ddd;
	}
	
	.land_contact_panel .register .email input {
		border:1px solid #ccc;
	}
	
	.land_contact_panel .register .email input:focus {
		border:1px solid #999;
	}
	
	.land_contact_panel .enquiry .button {
		display:inline-block;
		line-height:100%;
		padding:12px 16px;
		background-color:#222;
		color:#fff;
		text-decoration:none;
		font-weight:700;
		font-size:0.9em;
	}
	
	.land_contact_panel .enquiry .button:active {
		box-shadow:inset 1px 1px 8px rgba(0,0,0,0.2);
	}
	
	/* -- register form -- */
		
	.register_form table {
		border-collapse:collapse;
	}
	
	.register_form .email {
		position:relative;
		width:100%;
		padding:0;
		border:none;
	}
	
	.register_form .email label {
		position:absolute;
		left:12px;
		top:50%;
		transform:translate(0,-50%);
		opacity:1;
		transition:opacity 0.2s;
		color:#999;
	}
	
	.register_form .email.focus label {
		opacity:0;
	}
	
	.register_form .email input {
		-webkit-appearance: none;
		width:100%;
		height:40px;
		line-height:40px;
		padding:0 12px;
		box-sizing:border-box;
		border:1px solid #ccc;
		border-right:none;
		font-size:1em;
		font-weight:300;
		box-shadow:none;
		color:#444;
		border-radius:0;
	}
	
	.register_form .email input:focus {
		border-color:#666;
		box-shadow:none;
		outline:none;
	}
			
	.register_form .email input:invalid {
		box-shadow:none;
	}
	
	.register_form .email input:invalid:focus {
		
	}
		
	.register_form .submit {
		padding:0;
		border:none;
	}
	
	.register_form .submit input {
		-webkit-appearance: none;
		height:40px;
		padding:0 24px;
		margin:0;
		box-sizing:border-box;
		background:#222;
		background-color:#222;
		color:#fff;
		font-weight:700;
		font-size:1em;
		border:none;
		border-radius:0;
		cursor:pointer;
	}
	
	.register_form .submit input:active {
		box-shadow:inset 2px 2px 8px rgba(0,0,0,0.25);
	}
	
	.register_form .submitting {
		display:none;
	}
	
	.register_form .submitted {
		display:none;
	}
	
	.register_form.submitting .default {
		display:none;
	}
	
	.register_form.submitting .submitting {
		display:block;
	}
	
	.register_form.submitted .default {
		display:none;
	}
	
	.register_form.submitted .submitted {
		display:block;
	}
		
	/* -- downloads -- */
	
	.downloads_panel .panel_maxwidth {
		max-width:768px;
	}
	
	.download_list {
		margin:0;
		padding:0;
	}
	
	.download_list li {
		list-style:none;
		margin-bottom:4px;
	}
	
	.download_list a {
		display:table;
		width:100%;
		text-decoration:none;
		background-color:#eee;
		line-height:110%;
	}
	
	.download_list .icon {
		display:table-cell;
		width:16px;
		vertical-align:top;
		text-align:center;
		padding:8px;
	}
	
	.download_list .icon img {
		display:inline-block;
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.download_list .text {
		display:table-cell;
		padding:8px 8px 8px 0;
		vertical-align:top;
	}
	
	/* -- google map panel -- */
	
	#gmap_panel {
		width:100%;
		height:256px;
		background-color:#f5f5f5;
		overflow:hidden;
	}
	
	/* -- salespeople list -- */
	
	.salesperson_compact {
		display:table;
		width:100%;
	}
	
	.salesperson_compact .image {
		display:table-cell;
		width:48px;
		vertical-align:middle;
		padding-right:16px;
	} 
	
	.salesperson_compact .image .circle {
		width:48px;
		height:48px;
		line-height:48px;
		text-align:center;
		border-radius:50%;
		background-color:#f5f5f5;
		overflow:hidden;
	}
	
	.salesperson_compact .image .circle img {
		width:auto;
		height:auto;
		max-width:100%;
		max-height:100%;
	}
	
	@supports (object-fit:cover) {
		.salesperson_compact .image .circle.cover img {
			max-width:auto;
			max-height:auto;
			width:100%;
			height:100%;
			object-fit:cover;
		}
		.salesperson_compact .image .circle.contain img {
			max-width:auto;
			max-height:auto;
			width:80%;
			height:100%;
			object-fit:contain;
		}
	}
		
	.salesperson_compact > .text {
		display:table-cell;
		vertical-align:middle;
	}
	
	.salesperson_compact .text h3 {
		margin:0 0 4px 0;
		font-size:1.2em;
		font-weight:500;
	}
	
	.salesperson_compact .text ul {
		margin:0;
		padding:0;
	}
	
	.salesperson_compact .text ul li {
		list-style:none;
		font-size:0.9em;
	}
	
	.salesperson_compact .text ul li a {
		display:table;
		width:auto;
		text-decoration:none;
	}
	
	.salesperson_compact .text ul li a .icon {
		display:table-cell;
		vertical-align:middle;
		width:16px;
	}
	
	.salesperson_compact .text ul li a .icon img {
		width:auto;
		height:auto;
		max-width:12px;
		max-height:12px;
		vertical-align:middle;
	}
	
	.salesperson_compact .text ul li a .text {
		display:table-cell;
		vertical-align:middle;
	}
	
	/* ---- fairland global bar ---- */
	
	#fairland_bar {
		display:none;
		position:relative;
		background-color:#fff;
		color:#444;
		font-size:0.9em;
		text-align:right;
		z-index:600;
		height:64px;
		line-height:64px;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
	}
	
	#fairland_bar ul {
		padding:0;
		margin:0;
	}
	
	#fairland_bar ul li {
		list-style:none;
	}
	
	#fairland_bar a {
		text-decoration:none;
		color:#444;
	}
	
	#fairland_bar > ul > li {
		display:inline-block;
		padding:0 24px 0 0;
	}
	
	#fairland_bar > ul > li > a {
		display:block;
	}
	
	#fairland_bar .dropdown {
		
	}
	
	#fairland_bar .dropdown .dropdown_link {
		color:#999;
	}
	
	#fairland_bar .dropdown .dropdown_link:after {
		display:inline-block;
		font-size:0.6em;
		vertical-align:middle;
		content:'▼';
	}
	
	#fairland_bar .dropdown .bg {
		display:none;
		position:fixed;
		top:0;
		right:0;
		bottom:0;
		left:0;
		z-index:1500;
	}
	
	#fairland_bar .dropdown ul {
		display:none;
		position:absolute;
		background-color:#fff;
		text-align:left;
		width:384px;
		top:64px;
		right:0;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
		z-index:2000;
	}
	
	#fairland_bar .dropdown.open .bg {
		display:block;
	}
	
	#fairland_bar .dropdown.open ul {
		display:block;
	}
	
	#fairland_bar .dropdown.open .dropdown_link {
		color:#666;
	}
	
	#fairland_bar .dropdown.open .dropdown_link:after {
		content:'▲';
	}
	
	#fairland_bar .dropdown ul li {
		line-height:100%;
	}
	
	#fairland_bar .dropdown ul li a {
		display:block;
		padding:12px;
		border-bottom:1px solid #eee;
	}
	
	#fairland_bar .dropdown ul li.heading a {
		font-weight:700;
		text-transform:uppercase;
		background-color:#35505c;
		color:#fff;
	}
	
	
	
	#fairland_bar .dropdown ul li.subheading a {
		font-weight:700;
		text-transform:uppercase;
		background-color:#eee;
		color:#999;
	}
			
	#fairland_bar .logo img {
		display:inline-block;
		height:24px;
		width:auto;
		vertical-align:middle;
	}
	
	/* -- house and land -- */
	
	.houseland_message_box {
		display:flex;
		flex-direction:column;
		text-align:center;
		margin:0 auto 16px auto;
		background-color:#f5f5f5;
		background:linear-gradient(135deg, #f9f9f9 0%,#f5f5f5 100%);
		line-height:110%;
	}
	
	.houseland_message_box.see_land {
		display:none;
	}
	
	.houseland_message_box.see_land.show {
		display:flex;
	}
	
	.houseland_message_box.no_results {
		display:none;
	}
	
	.houseland_message_box.no_results.show {
		display:flex;
	}
		
	.houseland_message_box .left {
		padding:16px;
	}
	
	.houseland_message_box .left .icon {
		display:inline-block;
		width:16px;
		height:16px;
		margin:0 8px 0 0;
		vertical-align:middle;
	}
	
	.houseland_message_box .right {
		padding:0 16px 16px 16px;
	}
	
	.houseland_message_box .standard_button {
		padding:8px 12px;
	}
	
	/* -- home for sale / house and land listings -- */
	
	#listing_detail {
        background-color:#f5f5f5;
        padding:32px 0;
    }
    
    #listing_detail .grid_container {
        width:90%;
        max-width:1366px;
        margin:0 auto;
    }
    
    #listing_detail .grid_box {
        margin:0 0 16px 0;
    }
    
    #listing_detail .box_heading {
		display:flex;
		align-items:center;
        position:relative;
        background-color:#34505c;
        color:#fff;
        padding:16px;
        letter-spacing:0.05em;
        height:100%;
        box-sizing:border-box;
    }
    
    #listing_detail .box_heading .box_inner {
        
    }
    
    #listing_detail .box_heading h1 {
        margin:0;
        font-size:24px;
    }
    
    #listing_detail .box_heading .suburb {
        color:#b6d2de;
        margin-bottom:12px;
    }
    
    #listing_detail .box_heading .price {
        font-size:1.4em;
        font-weight:300;
        line-height:20px;
        margin:0 0 8px 0;
    }
    
    #listing_detail .box_heading .price .dollar {
        font-size:14px;
        vertical-align:middle;
    }
	
	#listing_detail .box_heading .leaseback {
		font-size:0.6em;
		font-weight:300;
	}
	
	#listing_detail .box_heading .deposit {
		font-size:0.6em;
		color:#40e06f;
	}
    
    #listing_detail .box_heading .rooms {
        
    }
    
    #listing_detail .box_heading .rooms .room {
        display:inline-block;
        margin-right:16px;
        font-weight:700;
        font-size:20px;
    }
    
    #listing_detail .box_heading .rooms .room img {
        display:inline-block;
        width:auto;
        height:auto;
        max-width:24px;
        max-height:14px;
        font-weight:500;
        margin:0 0 0 4px;
    }
	
	#listing_detail .box_heading .status {
		margin:16px 0 0 0;
		font-style:italic;
		color:#ccc;
		font-size:0.8em;
		font-weight:300;
	}
        
    #listing_detail .box_images {
        
    }
	
	#listing_detail .box_images .top_image {
        display:block;
        height:256px;
        overflow:hidden;
        position:relative;
		background-size:cover;
		background-position:center center;
    }
	
	#listing_detail .box_images .top_image:after {
		position:absolute;
		z-index:300;
		right:16px;
		top:16px;
		font-size:0.8em;
		line-height:100%;
		color:#fff;
		text-shadow:1px 1px 2px rgba(0,0,0,0.5);
		content:'Images are for illustrative purposes only'
	}	
	
    #listing_detail .box_images .main_image {
        position:relative;
		display:none;
        z-index:200;
    }
    
    #listing_detail .box_images .gallery_button {
        position:absolute;
        right:8px;
        bottom:8px;
        padding:8px;
        display:inline-block;
        background-color:#34505c;
        color:#fff;
        z-index:300;
        line-height:105%;
    }
    
    #listing_detail .box_images .gallery_button img {
        display:inline-block;
        width:auto;
        height:auto;
        max-width:16px;
        max-height:16px;
        margin-right:8px;
        vertical-align:middle;
    }
    
    #listing_detail .box_contact {
		display:flex;
		align-items:center;
        position:relative;
        background-color:#fff;
        box-shadow:2px 2px 4px rgba(0,0,0,0.1);
        padding:16px;
        height:100%;
        box-sizing:border-box;
    }
    
    #listing_detail .box_contact .contact_person {
        display:flex;
		justify-content:flex-start;
		align-items:center;
    }
    
    #listing_detail .box_contact .contact_person .image {
        overflow:hidden;
        width:64px;
        height:64px;
        border-radius:50%;
        background: radial-gradient(ellipse at center, #fff 0%, #eee 100%);
    }
    
    #listing_detail .box_contact .contact_person .image img {
        display:block;
        width:100%;
        height:auto;
        mix-blend-mode:multiply;
    }
	    
    #listing_detail .box_contact .contact_person .text {
        padding:0 0 0 16px;
    }
    
    #listing_detail .box_contact .contact_person .name {
        font-weight:700;
        color:#35505c;
        line-height:110%;
        font-size:18px;
    }
    
    #listing_detail .box_contact .contact_person .subline {
        font-size:14px;
        color:#999;
        line-height:110%;
    }
	
	#listing_detail .box_contact .contact_person .contact_details {
		padding:0;
		margin:8px 0;
	}
	
	#listing_detail .box_contact .contact_person .contact_details li {
		list-style:none;
	}
	
	#listing_detail .box_contact .contact_person .contact_details li a {
		display:block;
		padding:4px 0;
		text-decoration:none;
	}
	
	#listing_detail .box_contact .contact_person .contact_details li a img {
		display:inline-block;
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		margin:0 8px 0 0;
	}
    
    #listing_detail .box_contact .contact_person .action {
        margin-top:4px;
    }
    
    #listing_detail .box_contact .contact_person .button {
        display:inline-block;
        padding: 8px;
        line-height: 100%;
        font-weight: 700;
        font-size:14px;
        background-color: #22B24C;
        background: linear-gradient(to bottom, #59C579 0%, #22B24C 100%);
        color: #fff;
        text-transform: uppercase;
        text-decoration:none;
    }
    
    #listing_detail .box_contact .contact_person .button:active {
        background-color: #1ca43f;
        background: linear-gradient(to bottom, #1ca43f 0%, #48b962 100%);
        box-shadow:inset 2px 2px 4px rgba(0,0,0,0.1);
    }
	
	#listing_detail .box_actions {
		background-color:#fff;
		padding:16px;
		box-shadow: 2px 2px 4px rgba(0,0,0,0.1);
	}
		
	#listing_detail .box_actions .project_name {
		font-size:1.2em;
		font-weight:700;
		margin:0 0 8px 0;
	}
	
	#listing_detail .box_actions .project_name .top_label {
		font-size:0.6em;
		font-weight:300;
		color:#999;
		font-family:museo-sans,sans-serif;
	}
	
	#listing_detail .box_actions .project_name a {
		text-decoration:none;
	}
	
	#listing_detail .box_actions ul {
		padding:0;
		margin:0;
	}
	
	#listing_detail .box_actions ul li {
		list-style:none;
	}
	
	#listing_detail .box_actions ul li a {
		display:flex;
		justify-content:flex-start;
		align-items:center;
		text-decoration:none;
		padding:4px 0;
	}
	
	#listing_detail .box_actions ul li a img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		margin:0 8px 0 0;
	}
	    
    #listing_detail .box_specs {
        background-color:#fff;
        box-shadow:2px 2px 4px rgba(0,0,0,0.1);
        padding:16px;
    }
    
    #listing_detail .box_specs a {
        color:#35505c;
    }
    
    #listing_detail .box_specs table {
        width:100%;
        border-collapse:collapse;
    }
    
    #listing_detail .box_specs table th {
        text-align:left;
        color:#35505c;
        font-weight:500;
        letter-spacing:0.1em;
        padding:16px 0 8px 0;
        border-bottom:1px dotted #ccc;
    }
	
	#listing_detail .box_specs table th.unit {
		text-transform:none;
		text-align:right;
		font-weight:500;
	}
    
    #listing_detail .box_specs table tr:first-child th {
        padding-top:0;
    }
    
    #listing_detail .box_specs table td {
        border-bottom:1px dotted #ccc;
        padding:8px 0;
        line-height:120%;
        font-size:14px;
    }
	
	#listing_detail .box_specs table td.mono {
		font-family: roboto-mono,monospace,sans-serif;
		font-weight:300;
	}
    
    #listing_detail .box_specs table td:nth-child(2){
        text-align:right;
    }
    
    #listing_detail .box_specs table tr:last-child td {
        border-bottom:none;
    }
	
	#listing_detail .map_button {
		margin-bottom:16px;
	}
	    
    #listing_detail .box_floorplan {
        background-color:#fff;
        box-shadow:2px 2px 4px rgba(0,0,0,0.1);
        text-align:center;
        padding:16px;
    }
    
    #listing_detail .box_floorplan img {
        max-width:100%;
        max-height:1024px;
        width:auto;
        height:auto;
    }
    
    #listing_detail .box_smallprint {
        font-size:14px;
        color:#999;
        padding:0 16px;
    }
	
	#popup_gmap_container {
		width:90%;
		height:90%;
	}
	
	@supports ( display:grid ) {
		
		#listing_detail .grid_container {
			display:grid;
			grid-template-columns:100%;
			grid-template-rows:auto;
			gap:16px;
		}
		
		#listing_detail .grid_box {
			margin:0;
		}

		#listing_detail .box_heading {
			grid-row-start:1;
			grid-row-end:2;
		}
		
		#listing_detail .box_images {
			grid-row-start:2;
			grid-row-end:3;
		}
		
		#listing_detail .box_images .top_image {
			height:60vw;
			max-height:384px;
		}
		
		#listing_detail .box_contact {
			grid-row-start:3;
			grid-row-end:4;
		}
		
		#listing_detail .box_actions {
			grid-row-start:5;
			grid-row-end:6;
		}
		
		#listing_detail .box_specs {
			grid-row-start:6;
			grid-row-end:7;
		}
		
		#listing_detail .box_floorplan {
			grid-row-start:4;
			grid-row-end:5;
		}
		
		#listing_detail .box_smallprint {
			grid-row-start:7;
			grid-row-end:8;
		}
		
	}
	
	@supports ( object-fit:cover ) {
		
		#listing_detail .box_contact .contact_person .image img {
			width:100%;
			height:100%;
			object-fit:cover;
			object-position:center top;
			top:0;
		}	
		
		#listing_detail .box_images .main_image {
			display:block;
			width:100%;
			height:100%;
			object-fit:cover;
		}
		
	}
	
	/* -- special projects -- */
		
	.special_project_design_list {
		display:flex;
		flex-direction:column;
		margin:-16px;
	}
	
	.special_project_design_list .design_item {
		background-color:#fff;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
		margin:16px;
	}
	
	.special_project_design_list .design_item .image {
		display:block;
		background-color:#ccc;
		height:256px;
		background-size:cover;
		background-position:center center;
	}
	
	.special_project_design_list .design_item .image img {
		display:none;
	}
	
	@supports ( object-fit:cover ) {
		
		.special_project_design_list .design_item .image img {
			display:block;
			object-fit:cover;
			width:100%;
			height:100%;
			object-position:center 70%;
		}
		
	}
	
	.special_project_design_list .design_item .text {
		padding:16px;
	}
	
	.special_project_design_list .design_item .heading {
		display:flex;
		justify-content:space-between;
		align-items:center;
		margin:0 0 8px 0;
	}
	
	.special_project_design_list .design_item .name {
		font-weight:700;
		font-size:1.2em;
		margin:0 16px 0 0;
	}
	
	.special_project_design_list .design_item .name a {
		text-decoration:none;
	}
	
	.special_project_design_list .design_item .area {
		text-align:right;
		margin:0 0 0 16px;
	}
	
	.special_project_design_list .design_item .stats {
		margin:0 0 16px 0;
	}
	
	.special_project_design_list .design_item .rooms {
		display:flex;
		justify-content:flex-start;
		align-items:center;
		flex-wrap:wrap;
		margin:0 16px 0 0;
	}
	
	.special_project_design_list .design_item .rooms .room {
		display:flex;
		justify-content:flex-start;
		align-items:center;
		margin:0 16px 0 0;
		font-size:1.1em;
	}
	
	.special_project_design_list .design_item .rooms .room img {
		width:auto;
		height:auto;
		max-width:20px;
		max-height:16px;
		margin:0 0 0 8px;
	}
	
	.special_project_design_list .design_item .listings_heading {
		padding:12px 0 0 0;
		margin:0 0 8px 0;
		border-top:1px solid #ccc;
		color:#999;
	}
	
	.special_project_design_list .design_item .listings_heading a {
		color:#999;
		text-decoration:none;
	}
	
	.special_project_design_list .design_item .listings {
		margin:0;
		padding:0;
	}
	
	.special_project_design_list .design_item .listings li {
		list-style:none;
		border-bottom:1px dotted #ddd;
	}
	
	.special_project_design_list .design_item .listings li:last-child {
		border:none;
	}
	
	.special_project_design_list .design_item .listings li a {
		position:relative;
		display:block;
		padding:6px 16px 6px 0;
		line-height:100%;
		text-decoration:none;
	}
	
	.special_project_design_list .design_item .listings li a:after {
		display:inline-block;
		position:absolute;
		content:'›';
		right:0;
		top:50%;
		transform:translateY(-50%);
	}
	
	.special_project_design_list .design_item .listings li a .small {
		font-size:0.75em;
		color:#999;
	}
	
	.special_project_design_list .design_item .listings li[data-status='Sold'] a {
		color:#ccc;
		color:#bd432f;
		text-decoration:line-through;
	}
		
	.special_project_design_list .design_item .listings li[data-status='Sold'] a:after {
		content:'sold';
	}
	
	.special_project_design_list .design_item .listings li[data-status='Under Contract'] a {
		color:#ccc;
		color:#bd432f;
		text-decoration:line-through;
	}
		
	.special_project_design_list .design_item .listings li[data-status='Under Contract'] a:after {
		content:'under contract';
	}
	
	.special_project_design_list .design_item .listings li[data-status='On Hold'] a {
		color:#999;
	}
	
	.special_project_design_list .design_item .listings li[data-status='On Hold'] a:after {
		content:'hold';
	}
	
	/* -- land site footer -- */
		
	#footer.land_site_footer {
		color:#fff;
	}
	
	#footer.land_site_footer a {
		color:#fff;
	}
	
	#footer.land_site_footer .top {
		background-color:#333;
	}
	
	#footer.land_site_footer .bot {
		background-color:#222;
		padding:24px 0;
		font-size:0.8em;
		text-align:center;
	}
	
	#footer.land_site_footer .bot .item {
		display:inline-block;
		vertical-align:middle;
	}
	
	#footer.land_site_footer .bot .divider {
		display:inline-block;
		vertical-align:middle;
		color:#999;
		margin:0 8px;
	}
	
	#footer.land_site_footer .top .panel_maxwidth {
		display:flex;
		width:auto;
		margin:0 auto;
		justify-content:center;
		align-items:center;
	}
	
	#footer.land_site_footer .salesperson {
		display:block;
		vertical-align:bottom;
	}
	
	#footer.land_site_footer .office {
		display:none;
		vertical-align:middle;
	}
	
	#footer.land_site_footer .links {
		display:none;
		vertical-align:middle;
	}
	
	#footer.land_site_footer .links h2 {
		margin:0 0 8px 0;
		font-size:1.2em;
		color:#ccc;
	}
	
	#footer.land_site_footer .links ul {
		margin:0;
		padding:0;
	}
	
	#footer.land_site_footer .links li {
		list-style:none;
	}
	
	#footer.land_site_footer .links a {
		display:inline-block;
		text-decoration:none;
		color:#999;
	}
	
	/* -- contact -- */
	
	#contact_form {
		background-color:#eee;
	}
	
	#contact_person .panel_maxwidth,
	#contact_office .panel_maxwidth,
	#contact_form .panel_maxwidth {
		max-width:768px;
	}
	
	.salesperson {
		
	}
	
	.salesperson .inner {
		display:flex;
		flex-direction:row;
		justify-content:flex-start;
	}
	
	.salesperson .image {
		display:none;
	}
	
	.salesperson .image img {
		
	}
	
	.salesperson .inner > .text {
		padding:32px 0;
		line-height:130%;
	}
	
	.salesperson .text h2 {
		margin:0 0 8px 0;
		font-size:1.4em;
	}
	
	.salesperson .text h2 span {
		font-weight:300;
		font-size:0.75em;
		color:#999;
	}
	
	.salesperson .text ul {
		margin:0;
		padding:0;
	}
	
	.salesperson .text li {
		list-style:none;
		margin:4px 0;
	}
	
	.salesperson .text a {
		display:flex;
		flex-direction:row;
		text-decoration:none;
	}
	
	.salesperson .text .icon {
		flex:0 0 32px;
		text-align:center;
	}
	
	.salesperson .text .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.salesperson .text .text {
		
	}
	
	#contact_office {
		background-color:#f5f5f5;
	}
	
	#contact_office .office {
		display:flex;
		flex-direction:column;
	}
	
	#contact_office .col {
		margin:8px 0;
	}
	
	#contact_office h2 {
		margin-bottom:16px;
	}
	
	#contact_office h2 img {
		width:auto;
		height:32px;
	}
	
	.office {
		line-height:130%;
	}
	
	.office h2 {
		margin:0 0 8px 0;
		font-size:1.4em;
	}
	
	.office h2 img {
		width:auto;
		height:24px;
	}
	
	.office ul {
		margin:0;
		padding:0;
	}
	
	.office li {
		list-style:none;
		margin:4px 0;
	}
	
	.office a {
		display:flex;
		flex-direction:row;
		text-decoration:none;
	}
	
	.office .icon {
		flex:0 0 32px;
		text-align:center;
	}
	
	.office .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.office .text {
		
	}
	
	.signup_panel {
		background-color:#666;
		color:#fff;
		text-align:center;
	}
	
	.signup_panel .panel_maxwidth {
		max-width:420px;
		margin:32px auto;
	}
	
	.signup_panel h3 {
		margin:0 0 12px 0;
	}
	
	.signup_panel p {
		margin:12px 0;
		line-height:120%;
	}
	
	.signup_panel p br {
		display:none;
	}
	
	.signup_panel form {
		margin:24px auto 0 auto;
		max-width:320px;
	}
	
	.signup_panel .email input {
		height:48px;
		line-height:48px;
	}
	
	.register_form .submit input {
		height:48px;
	}
	
	/* -- breadcrumb -- */
	
	.breadcrumb {
		padding:16px 0;
		background-color:#f5f5f5;
	}
	
	.breadcrumb .item {
		display:inline-block;
		color:#999;
		text-decoration:none;
	}
	
	.breadcrumb .divider {
		display:inline-block;
		color:#ccc;
	}
	
	/* -- custom interface elements -- */
	
	.custom_dropdown {
		position:relative;
		z-index:10;
		width:auto;
	}
	
	.custom_dropdown.open {
		z-index:9999;
	}
	
	.custom_dropdown .bg {
		display:none;
		position:fixed;
		top:0;
		right:0;
		bottom:0;
		left:0;
		z-index:5;
		background-color:rgba(0,0,0,0.1);
	}
	
	.custom_dropdown.open .bg {
		display:block;
	}
	
	.custom_dropdown label {
		display:block;
		margin:0 0 4px 0;
	}
	
	.custom_dropdown .top {
		position:relative;
		display:block;
		background-color:#fff;
		height:40px;
		line-height:40px;
		padding:0 32px 0 12px;
		text-decoration:none;
		font-weight:500;
		z-index:20;
		border:1px solid #ccc;
	}
	
	.custom_dropdown.open .top {
		position:relative;
		background-color:#ccc;
		color:#fff;
	}
	
	.custom_dropdown .top:after {
		display:inline-block;
		position:absolute;
		content:'▼';
		top:50%;
		right:12px;
		transform:translateY(-50%);
		font-size:0.5em;
	}
	
	.custom_dropdown.open .top:after {
		content:'▲';
	}
	
	.custom_dropdown .bot {
		display:none;
		position:absolute;
		top:100%;
		right:0;
		left:0;
		background-color:#fff;
		margin:0;
		padding:0;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
		z-index:10;
	}
	
	.custom_dropdown.open .bot {
		display:block;
	}
	
	.custom_dropdown .bot li {
		list-style:none;
	}
	
	.custom_dropdown .bot a {
		display:block;
		padding:8px;
		text-decoration:none;
		font-weight:500;
	}
	
	.custom_slider {
		
	}
	
	.custom_slider label {
		display:block;
		margin:0 0 4px 0;
	}
	
	.custom_slider .numbers {
		display:flex;
		justify-content:space-between;
		align-items:flex-end;
		margin:-8px;
	}
	
	.custom_slider .number {
		margin:8px;
		height:20px;
		line-height:20px;
		flex:1 1 50%;
	}
		
	.custom_slider .number.max {
		text-align:right;
	}
	
	.custom_slider .number input:focus {
		background-color:#fff;
	}
	
	.custom_slider .slider {
		position:relative;
		height:4px;
		margin:12px 0 0 0;
		background-color:#ddd;
		box-shadow:inset 1px 1px 2px rgba(0,0,0,0.1);
		border:none;
		border-radius:0;
	}
	
	.custom_slider .noUi-connect {
		background-color:#444;
	}
	
	.custom_slider .noUi-handle {
		background-color:#999;
		width:16px;
		height:16px;
		right:-8px;
		top:-4px;
		border-radius:50%;
	}
	
	/* -- display precincts -- */
	
	.display_precinct_villages {
		background-color:#eee;
	}
	
	.precinct_village_list {
		display:flex;
		flex-direction:column;
		margin:-8px;
	}
	
	.precinct_village_list .item {
		display:flex;
		flex-direction:column;
		justify-content:space-between;
		background-color:#fff;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
		margin:8px;
	}
	
	.precinct_village_list .item .image {
		display:block;
		background-color:#ccc;
		background-size:cover;
		background-position:center center;
		height:160px;
	}
	
	.precinct_village_list .item .image img {
		display:none;
	}
	
	@supports ( object-fit:cover ) {
		
		.precinct_village_list .item .image img {
			display:block;
			width:100%;
			height:100%;
			object-fit:cover;
			vertical-align:top;
		}
		
	}
	
	.precinct_village_list .item .logo {
		padding:24px 16px 0 16px;
	}
	
	.precinct_village_list .item .logo img {
		display:inline-block;
		vertical-align:top;
		width:auto;
		height:auto;
		max-width:160px;
		max-height:64px;
	}
	
	.precinct_village_list .item .logo img[src*='fairmont'] {
		max-width:256px;
	}
	
	.precinct_village_list .item .text {
		padding:24px 16px;
	}
	
	.precinct_village_list .item .text .name {
		font-size:1.4em;
		font-weight:700;
		margin:0 0 8px 0;
	}
	
	.precinct_village_list .item .text .name a {
		color:#222;
		text-decoration:none;
	}
	
	.precinct_village_list .item .text .times {
		font-size:0.9em;
		color:#999;
		padding:0 0 0 16px;
		margin:0;
	}
	
	.precinct_village_list .item .text .times li {
		
	}
	
	.precinct_village_list .item .button {
		display:block;
		padding:16px;
		background-color:#f5f5f5;
		text-decoration:none;
		color:#666;
	}
	
	/* -- terms and conditions -- */
	
	#tc_index {
		background-color:#f5f5f5;
	}
	
	#tc_index ul {
		padding:0;
		margin:0;
	}
	
	#tc_index li {
		list-style:none;
	}
	
	#tc_index li a {
		display:block;
		background-color:#fff;
		padding:8px;
		margin:2px 0;
		text-decoration:none;
	}
	
	#tc_items {
		background-color:#eee;
	}
	
	#tc_items .item {
		background-color:#fff;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
		margin:0 0 16px 0;
		padding:16px;
	}
	
	#tc_items .item ul,
	#tc_items .item ol{
		padding-left:16px;
	}
	
	#tc_items .item ul li,
	#tc_items .item ol li {
		line-height:120%;
		margin:8px 0;
	}
				
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 480px) {
	
	.vertical_padding {
		padding:48px 0;
	}
	
	/* -- news -- */
	
	.news_list .news_item .image {
		height:192px;
	}
	
	.news_list .news_item .text {
		padding:24px;
	}
	
	/* -- house and land -- */
	
	.houseland_message_box {
		flex-direction:row;
		justify-content:space-between;
		align-items:center;
	}
	
	.houseland_message_box .left {
		
	}
	
	.houseland_message_box .right {
		padding:16px;
	}
	
	/* -- house listings -- */
	
	#listing_filter .items {
		flex-direction:row;
		flex-wrap:wrap;
	}
	
	#listing_filter .item {
		flex:0 0 calc( 50% - 32px );
	}
	
	.listing_items .item .rooms {
		display:inline-block;
		margin:0 24px 0 0;
	}
	
	.listing_items .item .price {
		display:inline-block;
	}
	
	/* -- downloads -- */
	
	.download_list .icon {
		padding:16px;
	}
		
	.download_list .text {
		padding:16px 16px 16px 0;
	}
	
	/* -- special projects -- */
	
	.special_project_design_list .design_item .image {
		height:256px;
	}
	
	.special_project_design_list .design_item .text {
		padding:24px;
	}
		
	/* -- contact -- */
	
	.salesperson {
		
	}
	
	.salesperson .image {
		display:block;
		position:relative;
		flex:0 0 140px;
		width:140px;
		vertical-align:bottom;
		text-align:left;
	}
	
	.salesperson .image img {
		position:absolute;
		width:auto;
		right:0;
		bottom:0;
		height:90%;
		vertical-align:bottom;
	}
	
	.salesperson .inner > .text {
		padding:32px 0 32px 32px;
	}
	
	.signup_panel {
		
	}
	
	.signup_panel h3 {
		font-size:1.8em;
	}
	
	.signup_panel p {
		font-size:1.2em;
	}
	
	.signup_panel p br {
		display:inline;
	}
	
	.signup_panel form {
		margin-top:32px;
	}
	
	/* -- display precincts -- */
	
	.precinct_village_list {
		flex-direction:row;
		flex-wrap:wrap;
	}
	
	.precinct_village_list .item {
		flex:0 0 calc( 50% - 16px );
	}
	
	.precinct_village_list .item .image {
		height:128px;
	}
	
	/* -- terms and conditions -- */
	
	#tc_index {
		
	}
	
	#tc_items .item {
		padding:24px;
	}
			
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 768px) {
	
	.vertical_padding {
		padding:48px 0;
	}
	
	.form .row {
		display:flex;
		justify-content:space-between;
		align-items:end;
	}
	
	.form .row .field {
		margin-bottom:16px;
	}
	
	.form .row .field.full {
		flex:1 1 100%;
	}
	
	.form .row .field.half {
		flex:0 0 49%;
	}
	
	/* -- news -- */
	
	.news_list .news_item {
		flex-direction:row;
	}
	
	.news_list .news_item .image {
		flex:0 0 160px;
		height:auto;
	}
	
	.news_list .news_item .text {
		padding:32px;
	}
	
	/* -- allotment detail -- */
	
	.lot_info_panel .panel_maxwidth {
		display:flex;
		align-items:center;
	}
	
	.lot_info_panel .text {
		flex:1 1 50%;
	}
	
	.lot_info_panel .diagram {
		flex:1 1 50%;
	}
	
	/* -- house listings -- */
		
	#listing_filter {
		background-color:#f5f5f5;
		padding:32px 0;
	}
	
	#listing_filter .items {
		display:flex;
		justify-content:center;
		flex-direction:row;
		width:100%;
	}
	
	#listing_filter .item {
		flex:0 0 calc( 25% - 32px );
	}
	
	.listing_items .item .inner {
		flex-direction:row;
	}
	
	.listing_items .item .image {
		position:relative;
		flex:0 0 256px;
	}
	
	.listing_items .item .image img {
		display:none;
	}
	
	@supports (object-fit:cover) {
		.listing_items .item .image img {
			display:block;
			object-fit:cover;
			width:100%;
			height:100%;
		}
	}
	
	.listing_items .item .text {
		padding:32px;
	}
	
	.listing_items .item h3 .big {
		font-size:1em;
	}
	
	/* -- land contact panel -- */
	
	.land_contact_panel .panel_maxwidth {
		display:table;
	}
	
	.land_contact_panel .left {
		display:table-cell;
		vertical-align:top;
		padding:0;
		margin:0;
		padding-right:32px;
		border:none;
		width:50%;
	}
	
	.land_contact_panel .right {
		display:table-cell;
		vertical-align:top;
		padding-left:32px;
		width:50%;
	}
	
	.land_contact_panel .register {
		border:none;
		padding:0;
	}
	
	.salesperson_compact .text ul li {
		font-size:1em;
	}
	
	/* -- google map panel -- */
	
	#gmap_panel {
		height:320px;
	}
	
	/* ---- fairland global bar ---- */
	
	#fairland_bar {
		display:block;
	}
	
	/* -- home for sale / house and land listings -- */
	
	#listing_detail .grid_container {
        
    }
    
    #listing_detail .box_heading {
        padding:32px;
    }
    
    #listing_detail .box_heading .price {
        font-size:24px;
        line-height:24px;
    }
    
    #listing_detail .box_images {
    	
    }
    
    #listing_detail .box_contact {
        padding:32px;
    }
        
    #listing_detail .box_contact .contact_person .text {
        padding:0 0 0 24px;
    }
	
	#listing_detail .box_actions {
		padding:32px;
	}
    
    #listing_detail .box_specs {
        padding:32px;
    }
	
	#listing_detail .map_button {
		margin-bottom:24px;
	}
    
    #listing_detail .box_floorplan {
        padding:32px;
    }
    
    #listing_detail .box_smallprint {
        padding:0 32px;
    }
	
	@supports ( display:grid ) {
		
		#listing_detail .grid_container {
			grid-template-columns:45% 55%;
			grid-template-rows:auto auto auto;
		}
		
		#listing_detail .box_heading {
			grid-row-start:1;
			grid-row-end:2;
			grid-column-start:1;
			grid-column-end:2;
		}
		
		#listing_detail .box_images {
			grid-row-start:1;
			grid-row-end:2;
			grid-column-start:2;
			grid-column-end:3
		}
		
		#listing_detail .box_contact {
			grid-row-start:2;
			grid-row-end:3;
			grid-column-start:1;
			grid-column-end:2;
		}
		
		#listing_detail .box_actions {
			grid-row-start:3;
			grid-row-end:4;
			grid-column-start:1;
			grid-column-end:2;
		}
		
		#listing_detail .box_specs {
			grid-row-start:4;
			grid-row-end:5;
			grid-column-start:1;
			grid-column-end:2;
		}

		#listing_detail .box_floorplan {
			grid-row-start:2;
			grid-row-end:5;
			grid-column-start:2;
			grid-column-end:3;
		}

		#listing_detail .box_smallprint {
			grid-row-start:5;
			grid-row-end:6;
			grid-column-start:1;
			grid-column-end:3;
		}
		
	}
	
	/* -- special projects -- */
	
	.special_project_design_list {
		flex-direction:row;
		flex-wrap:wrap;
	}
	
	.special_project_design_list .design_item {
		flex:0 0 calc( 50% - 32px );
	}
	
	.special_project_design_list .design_item .image {
		height:320px;
	}
	
	.special_project_design_list .design_item .text {
		padding:32px;
	}
	
	.special_project_design_list .design_item .heading {
		margin:0 0 16px 0;
	}
	
	.special_project_design_list .design_item .name {
		font-size:1.4em;
	}
	
	.special_project_design_list .design_item .stats {
		margin:0 0 24px 0;
	}
	
	.special_project_design_list .design_item .listings_heading {
		padding:24px 0 0 0;
	}
	
	/* -- land site footer -- */
	
	#footer.land_site_footer .top {
		
	}
	
	#footer.land_site_footer .bot {
		padding:32px 0;
	}
	
	#footer.land_site_footer .office {
		display:block;
		margin-left:48px;
	}
	
	/* -- contact -- */
	
	.salesperson .inner {
		
	}
	
	.salesperson .image {
		flex:0 0 192px;
		width:192px;
	}
	
	.salesperson .inner > .text {
		padding:48px 0 48px 24px;
	}
	
	#contact_person .salesperson .inner > .text {
		font-size:1.1em;
	}
	
	#contact_office .office {
		flex-direction:row;
	}
	
	#contact_office .col {
		width:100%;
	}
	
	#contact_office .col:first-child {
		margin-right:32px;
	}
	
	#contact_office .col:last-child {
		
	}
	
	.office {
		font-size:1.1em;
	}
		
	/* -- display precincts -- */
	
	.precinct_village_list .item {
		flex:0 0 calc( 33.333% - 16px );
	}
	
	/* -- terms and conditions -- */
	
	#tc_items .item {
		padding:32px;
	}
		
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1024px) {
	
	/* -- land contact panel -- */
	
	.land_contact_panel .salesperson_compact {
		margin-bottom:32px;
	}
	
	.land_contact_panel .left {
		width:auto;
	}
	
	.land_contact_panel .right {
		width:420px;
	}
	
	/* -- salespeople list -- */
	
	.salesperson_compact .image {
		width:96px;
		padding-right:24px;
	}
	
	.salesperson_compact .image .circle {
		width:96px;
		height:96px;
		line-height:96px;
	}
	
	.salesperson_compact .text h3 {
		margin-bottom:8px;
	}
	
	.salesperson_compact .text ul li {
		font-size:1em;
	}
	
	.salesperson_compact .text ul li a .icon {
		padding:2px 0;
	}
	
	.salesperson_compact .text ul li a .text {
		padding:2px 0;
	}
	
	/* -- home for sale / house and land listings -- */
	
	#listing_detail .grid_container {
        
    }
    
    #listing_detail .box_heading h1 {
        font-size:28px;
    }
    
    #listing_detail .box_contact .contact_person .image {
        width:96px;
        height:96px;
    }
    
    #listing_detail .box_contact .contact_person .text {
        padding-left:32px;
    }
    
    #listing_detail .box_contact .contact_person .name {
        font-size:20px;
    }
    
    #listing_detail .box_contact .contact_person .subline {
        font-size:16px;
    }
    
    #listing_detail .box_contact .contact_person .action {
        margin-top:8px;
    }
    
    #listing_detail .box_contact .contact_person .button {
        font-size:16px;
    }
	
	@supports ( display:grid ) {
		
		#listing_detail .grid_container {
			grid-template-columns:40% 60%;
		}
		
	}
	
	/* -- contact -- */
	
	.salesperson .image {
		flex:0 0 220px;
		width:220px;
	}
	
	.salesperson .inner > .text {
		padding:64px 0 64px 32px;
	}
	
	#contact_person .salesperson .inner > .text {
		font-size:1.2em;
	}
	
	/* -- display precincts -- */
	
	.precinct_village_list .item {
		flex:0 0 calc( 25% - 16px );
	}
	
	/* -- news -- */
	
	.news_list .news_item .image {
		flex:0 0 192px;
	}
	
	
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1280px) {
	
	.vertical_padding {
		padding:64px 0;
	}
	
	.standard_button:hover {
		background-color:#333;
	}
	
	.standard_button:active {
		transform:scale(0.95);
	}
	
	.form .row .field {
		margin-bottom:24px;
	}
	
	.form input[type='text'],
	.form input[type='email'],
	.form input[type='number'],
	.form input[type='tel'],
	.form input[type='password'],
	.form input[type='text']{
		height:48px;
		line-height:48px;
	}
	
	.form select {
		height:48px;
	}
	
	.form input[type='submit'],
	.form input[type='button'] {
		height:48px;
		padding:0 24px;
	}
	
	.form label {
		margin-bottom:4px;
	}
	
	.form input[type='submit']:hover,
	.form input[type='button']:hover {
		background-color:#333;
	}
	
	/* -- news -- */
	
	.news_list .news_item .image {
		flex:0 0 256px;
	}
	
	.news_list .news_item .image:after {
		display:block;
		position:absolute;
		content:'';
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#fff;
		opacity:0;
		mix-blend-mode:overlay;
	}
	
	.news_list .news_item .image:hover:after {
		opacity:0.1;
	}
	
	.news_list .news_item .text {
		padding:48px;
	}
	
	.news_list .news_item .text .date {
		font-size:1em;
	}
	
	.news_list .news_item .text h1 {
		font-size:1.8em;
	}
	
	.news_list .news_item .text h1 a:hover {
		text-decoration:underline;
	}
	
	.news_list .news_item .text .excerpt {
		font-size:1.1em;
	}
	
	.news_list .news_item .text .standard_button {
		padding:12px 16px;
		font-size:1.1em;
	}
		
	.pagination li a:hover {
		box-shadow:0 0 8px rgba(0,0,0,0.1);
	}
	
	.pagination li a.disabled:hover {
		box-shadow:none;
	}
	
	.pagination li a:active {
		box-shadow:none;
		transform:scale(0.95);
	}
	
	.news_article h1 {
		font-size:3em;
	}
	
	/* -- land maps -- */
	
	.land_map_panel .panel_maxwidth {
		display:flex;
	}
	
	.land_map_panel .main {
		flex:1 1 auto;
	}
	
	.land_map_panel .sidebar {
		flex:0 0 320px;
		padding:0 0 0 48px;
		font-size:16px;
	}
	
	.land_map_panel .sidebar_item {
		padding:24px;
	}
	
	.land_map_panel .sidebar_item .button:hover {
		background-color:#fff;
	}
	
	.land_map_panel .sidebar_item .button:active {
		background-color:#f5f5f5;
		box-shadow:inset 1px 1px 4px rgba(0,0,0,0.1);
	}
	
	/* masterplan */
	
	.land_map svg a.stage.over:hover {
		fill:rgba(70,186,28,0.4);
	}
	
	.land_map svg a.stage.over[data-remaining-lots='0']:hover {
		fill:rgba(201,59,61,0.4);
	}
	
	.land_map svg a.special.over:hover {
		fill:rgba(28,186,147, 0.4);
	}
	
	/* stage plan */
	
	.land_map svg a.lot.over:hover {
		fill:rgba(70,186,28,0.4);
	}
	
	.land_map svg a.lot.over[data-status='onHold']:hover {
		fill:rgba(252,211,71,0.4);
	}
	
	/* allotment detail */
	
	.lot_info_panel .text {
		font-size:1.2em;
	}
	
	.lot_info_panel .text h1 {
		margin-bottom:12px;
	}
	
	.lot_info_panel .text .houseland_note a:hover {
		text-decoration:underline;
	}
	
	.lot_info_panel .text .buttons {
		margin:24px 0 0 0;
	}
	
	.lot_info_panel .text .button:hover {
		background-color:#333;
	}	
	
	.lot_info_panel .text .button.secondary:hover {
		background-color:#f5f5f5;
	}
	
	/* -- house listings -- */
		
	.listing_items .item .image {
		width:320px;
	}
	
	.listing_items .item .image .overlay {
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#fff;
		opacity:0;
	}
	
	.listing_items .item .inner:hover .image .overlay {
		opacity:0.1;
	}
	
	.listing_items .item .text {
		padding:48px;
	}
	
	.listing_items .item h3 .big {
		
	}
	
	.listing_items .item .inner:hover .price .deposit {
		border-color:#999;
		color:#666;
	}
	
	/* -- allotment table -- */
	
	.allotment_table_panel {
		background-color:#eee;
	}
	
	.allotment_table .stage a:hover {
		text-decoration:underline;
	}
	
	.allotment_table tr:hover .action .button {
		color:#444;
	}
	
	.allotment_table tr .action .button:hover {
		background-color:#444;
		border-color:#444;
		color:#fff;
	}
	
	/* -- register form -- */
	
	.register_form .email input {
		height:48px;
		line-height:48px;
	}
	
	.register_form .submit input {
		height:48px;
	}
	
	.register_form .submit input:hover {
		background-color:#333;
	}
	
	/* -- land contact panel -- */
	
	.land_contact_panel .register {
		margin-bottom:48px;
	}
	
	.land_contact_panel .enquiry .button:hover {
		background-color:#333;
	}
		
	/* -- downloads -- */
	
	.download_list a:hover {
		background-color:#f5f5f5;
	}
	
	/* -- google map panel -- */
	
	#gmap_panel {
		height:384px;
	}
	
	/* -- salespeople list -- */
	
	.salesperson_compact .text ul li a:hover .text {
		text-decoration:underline;
	}
	
	/* ---- fairland bar ---- */
	
	#fairland_bar .dropdown ul li a:hover {
		background-color:#0db14b;
		color:#fff;
	}
	
	#fairland_bar .dropdown ul li.heading a:hover {
		background-color:#35505c;
		color:#fff;
	}
	
	#fairland_bar .dropdown ul li.subheading a:hover {
		background-color:#eee;
		color:#999;
	}
	
	/* -- home for sale / house and land listings -- */
	
	#listing_detail .grid_container {
        
    }
    
    #listing_detail .box_heading {
        padding:48px;
    }
    
    #listing_detail .box_heading h1 {
        font-size:32px;
    }
    
    #listing_detail .box_heading .suburb {
        font-size:18px;
    }
    
    #listing_detail .box_images .gallery_button {
        padding:12px;
    }
    
    #listing_detail .box_images .gallery_button:hover {
        background-color:#486b7a;
    }
    
    #listing_detail .box_images .gallery_button:active {
        box-shadow:inset 2px 2px 8px rgba(0,0,0,0.5);
    }
        
    #listing_detail .box_contact .contact_person .button:hover {
        background-color: #2bc55f;
        background: linear-gradient(to bottom, #6ed396 0%, #2bc55f 100%);
    }
    
    #listing_detail .box_contact .contact_person .button:active {
        box-shadow:inset 2px 2px 4px rgba(0,0,0,0.1);
    }
    
    #listing_detail .box_contact .contact_person .image {
        width:128px;
        height:128px;
    }
    
    #listing_detail .box_contact .contact_person .text {
        padding-left:48px;
    }
    
    #listing_detail .box_contact .contact_person .name {
        font-size:24px;
        line-height:120%;
    }
    
    #listing_detail .box_contact .contact_person .subline {
        font-size:18px;
    }
	
	#listing_detail .box_contact .contact_person .contact_details li a:hover {
		text-decoration:underline;
	}
    
    #listing_detail .box_contact .contact_person .action {
        margin-top:12px;
    }
    
    #listing_detail .box_contact .contact_person .button {
        padding:12px;
    }
	
	#listing_detail .box_actions {
		padding:48px;
	}
		
	#listing_detail .box_actions a:hover {
		text-decoration:underline;
	}
    
    #listing_detail .box_specs {
        padding:48px;
    }
    
    #listing_detail .box_specs table th {
        padding-top:24px;
    }
	
	#listing_detail .box_specs table th.unit {
		font-size:0.8em;
	}
    
    #listing_detail .box_specs table td {
        font-size:16px;
    }
	
	#listing_detail .map_button {
		margin-bottom:32px;
	}
	    
    #listing_detail .box_floorplan {
        padding:48px;
    }
    
    #listing_detail .box_smallprint {
        padding:16px 48px;
    }
	
	@supports ( display:grid ) {
		
		#listing_detail .box_images .top_image {
			max-height:480px;
		}
		
		#listing_detail .grid_container {
			grid-template-rows: auto auto auto;
			gap:24px;
		}
				
	}
	
	/* -- special projects -- */	
	
	.special_project_design_list .design_item {
		flex:0 0 calc( 33.333% - 32px );
	}
	
	.special_project_design_list .design_item .image {
		height:288px;
	}
	
	.special_project_design_list .design_item .name a:hover {
		text-decoration:underline;
	}
	
	.special_project_design_list .design_item .listings_heading a:hover {
		text-decoration:underline;
	}
	
	.special_project_design_list .design_item .listings li a:hover {
		text-decoration:underline;
	}
	
	.special_project_design_list .design_item .listings li[data-status='Sold'] a:hover,
	.special_project_design_list .design_item .listings li[data-status='Under Contract'] a:hover,
	.special_project_design_list .design_item .listings li[data-status='On Hold'] a:hover{
		text-decoration:line-through;
	}
	
	/* -- land site footer -- */
	
	#footer.land_site_footer .top {
		
	}
	
	#footer.land_site_footer .bot {
		
	}
	
	#footer.land_site_footer .office {
		margin-left:64px;
	}
		
	/* -- contact -- */
	
	#contact_office .col:first-child {
		margin-right:64px;
	}
	
	.salesperson .image {
		flex:0 0 256px;
		width:256px;
	}
	
	.salesperson .inner > .text {
		padding:96px 0 96px 48px;
		padding:64px 0 64px 32px;
	}
	
	#contact_person .salesperson .inner > .text {
		font-size:1.4em;
	}
	
	.salesperson .text h2 {
		margin-bottom:12px;
	}
	
	.salesperson .text a {
		padding:2px 0;
	}
	
	.salesperson .text a:hover {
		text-decoration:underline;
	}
	
	.office {
		font-size:1.1em;
		line-height:130%;
	}
	
	.office h2 img {
		width:auto;
		height:32px;
	}
	
	.office li a {
		padding:2px 0;
	}
	
	.office li a:hover {
		text-decoration:underline;
	}
	
	.signup_panel h3 {
		font-size:2em;
	}
	
	/* -- breadcrumb -- */
	
	.breadcrumb a.item:hover {
		text-decoration:underline;
		color:#666;
	}
	
	/* -- custom interface elements -- */
		
	.custom_dropdown .bot a:hover {
		background-color:#444;
		color:#fff;
	}
	
	/* -- display precincts -- */
	
	.precinct_village_list .item .image {
		position:relative;
		height:192px;
	}
	
	.precinct_village_list .item .image:after {
		display:block;
		position:absolute;
		content:'';
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#fff;
		mix-blend-mode:overlay;
		opacity:0;
	}
	
	.precinct_village_list .item .image:hover:after {
		opacity:0.1;
	}
	
	.precinct_village_list .item .logo {
		padding:40px 24px 0 24px;
	}
	
	.precinct_village_list .item .text {
		padding:40px 24px;
	}
	
	.precinct_village_list .item .text .name a:hover {
		text-decoration:underline;
	}
	
	.precinct_village_list .item .button {
		padding:16px 24px;
	}
	
	.precinct_village_list .item .button:hover {
		background-color:#fcfcfc;
		background: radial-gradient(ellipse at center, #fff 0%, #f5f5f5 100%);
	}
	
	.precinct_village_list .item .button:active {
		background: radial-gradient(ellipse at center, #f5f5f5 0%, #eee 100%);
	}
	
	/* -- terms and conditions -- */
	
	#tc_index li a {
		padding:12px 16px;
	}
	
	#tc_index li a:hover {
		background-color:#222;
		color:#fff;
	}
	
	#tc_items .item {
		padding:32px;
	}
				
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1366px) {
	
	body {
		font-size:18px;
		line-height:130%;
	}
	
	.vertical_padding {
		padding:72px 0;
	}
	
	/* -- google map panel -- */
	
	#gmap_panel {
		height:420px;
	}
	
	/* -- display precincts -- */
	
	.precinct_village_list .item .logo {
		padding:40px 32px 0 32px;
	}
	
	.precinct_village_list .item .logo img {
		max-width:160px;
	}
	
	.precinct_village_list .item .text {
		padding:40px 32px;
	}
	
	.precinct_village_list .item .button {
		padding:16px 32px;
	}
	
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1600px) {
	
	.vertical_padding {
		padding:96px 0;
	}
	
	/* -- google map panel -- */
	
	#gmap_panel {
		height:512px;
	}
	
	/* -- special projects -- */	
	
	.special_project_design_list .design_item {
		/*flex:0 0 calc( 25% - 32px );*/
	}
		
	.special_project_design_list .design_item .image {
		height:320px;
	}
	
	.special_project_design_list .design_item .text {
		padding:40px;
	}
	
	/* -- land site footer -- */
	
	#footer.land_site_footer .office {
		margin-left:96px;
	}
	
	#footer.land_site_footer .links {
		display:block;
		margin-left:96px;
		line-height:130%;
	}
	
	#footer.land_site_footer .links li a {
		padding:2px 0;
	}
	
	#footer.land_site_footer .links li a:hover {
		text-decoration:underline;
		color:#ddd;
	}
	
	/* -- contact -- */
	
	.signup_panel h3 {
		font-size:2.4em;
	}
		
	/* -- display precincts -- */
	
	.precinct_village_list {
		margin:-12px;
	}
	
	.precinct_village_list .item {
		flex:0 0 calc( 25% - 24px );
		margin:12px;
	}
	
	.precinct_village_list .item .logo {
		padding:48px 40px 0 40px;
	}
	
	.precinct_village_list .item .text {
		padding:48px 40px;
	}
	
	.precinct_village_list .item .button {
		padding:24px 40px;
	}
	
	/* -- news -- */
	
	.news_list .news_item .image {
		flex:0 0 320px;
	}
	
	/* -- terms and conditions -- */
	
	#tc_items .item {
		padding:48px;
	}
	
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1920px) {
	
	
	
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

/* ======== animations ======== */

.lds-ripple {
  display: inline-block;
  position: relative;
  width: 32px;
  height: 32px;
  vertical-align:middle;
}

.lds-ripple div {
  position: absolute;
  border: 1px solid #fff;
  opacity: 1;
  border-radius: 50%;
  animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite;
}

.lds-ripple div:nth-child(2) {
  animation-delay: -0.5s;
}

@keyframes lds-ripple {
  0% {
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    opacity: 1;
  }
  100% {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
  }
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media print {
	
	@page {
		margin:0;
	}
	
	body {
		margin:1cm;
		font-family:sans-serif;
		color:#000;
		font-size:10pt;
		max-width:19cm;
	}
	
	a {
		color:#000;
	}
	
	p:first-child,
	h1:first-child,
	h2:first-child,
	h3:first-child,
	h4:first-child,
	h5:first-child {
		margin-top:0;
	}
	
	p:last-child,
	h1:last-child,
	h2:last-child,
	h3:last-child,
	h4:last-child,
	h5:last-child {
		margin-bottom:0;
	}
	
	.print_hide {
		display:none;
	}
	
	.print_only {
		display:block;
	}
	
	.panel_maxwidth {
		
	}
	
	.vertical_padding {
		padding:1cm 0;
	}
	
	.print_only_header {
		display:flex;
		justify-content:space-between;
		align-items:center;
		padding:0 0 1cm 0;
		border-bottom:0.25pt dotted #000;
		break-inside:avoid-page;
	}
	
	.print_only_header .logo {
		width:auto;
		height:auto;
		max-width:4cm;
		max-height:1.5cm;
		vertical-align:middle;
	}
	
	.print_only_header .right {
		text-align:right;
	}
	
	.dev_layout_intro {
		border-bottom:0.25pt dotted #000;
	}
	
	.land_map_panel .panel_maxwidth {
		display:flex;
		justify-content:space-between;
	}
	
	.land_map_panel .main {
		width:100%;
	}
	
	.land_map svg a.stage.under {
		fill:rgba(70,186,28,0.4);
		color:rgba(70,186,28,0.4);
		stroke:rgba(70,186,28,1);
		stroke-width:2px;
	}

	.land_map svg a.stage.over {
		fill:rgba(70,186,28,0);
		color:rgba(70,186,28,0);
		display:none;
	}

	.land_map svg a.stage.under[data-remaining-lots='0'] {
		fill:rgba(201,59,61,0.4);
		color:rgba(201,59,61,0.4);
		stroke:rgba(201,59,61,1);
		stroke-width:2px;
	}

	.land_map svg a.stage.over[data-remaining-lots='0'] {
		fill:rgba(201,59,61,0);
		color:rgba(201,59,61,0);
		display:none;
	}
	
	.land_map svg a.special.under {
		fill:rgba(28,186,147, 0.4);
		color:rgba(28,186,147, 0.4);
		stroke:rgba(28,186,147,1);
		stroke-width:2px;
	}
	
	.land_map svg a.special.over {
		fill:rgba(28,186,147, 0);
		color:rgba(28,186,147, 0);
		display:none;
	}
		
	.land_map svg a.lot.under {
		fill:rgba(70,186,28,0.4);
		color:rgba(70,186,28,0.4);
	}

	.land_map svg a.lot.over {
		fill:rgba(70,186,28,0);
		color:rgba(70,186,28,0);
		display:none;
	}
	
	.land_map svg a.lot.under[data-status='onHold'] {
		fill:rgba(252,211,71,0.4);
		color:rgba(252,211,71,0.4);
	}

	.land_map svg a.lot.over[data-status='onHold'] {
		fill:rgba(252,211,71,0);
		color:rgba(252,211,71,0);
		display:none;
	}
	
	.land_map_panel .sidebar {
		max-width:5cm;
		margin-left:1cm;
	}
	
	.land_map_panel .sidebar_actions {
		display:none;
	}
	
	.land_map_panel .sidebar .sidebar_item {
		border:0.25pt solid #000;
		margin:0 0 0.1cm 0;
		padding:0.5cm;
	}
	
	.land_map_panel .sidebar .sidebar_item h2 img {
		display:none;
	}
	
	.map_key td:nth-child(1) {
		padding-right:4px;
	}
	
	.map_key .swatch {
		display:inline-block;
		width:12px;
		height:12px;
		background-color:transparent;
		border:1px solid #ddd;
	}
	
	.map_key .swatch.available {
		background-color:#afda94;
		border-color:#678457;
	}
	
	.map_key .swatch.hold {
		background-color:#fceaa5;
		border-color:#b29f5c;
	}
	
	.map_key .swatch.sold {
		background-color:#e3a7a1;
		border-color:#926662;
	}
	
	.map_key .swatch.blank {
		background-color:#fdfaf3;
		border-color:#bdb8a9;
	}
	
	.map_key .swatch.easement {
		border:0.25pt dashed #00AEEF;
	}
	
	.map_key .swatch.letter {
		border:none;
		background-color:#222;
		color:#fff;
		border-radius:50%;
		width:16px;
		height:16px;
		line-height:16px;
		text-align:center;
		font-size:0.7em;
		font-weight:700;
	}
	
	.map_key .icon {
		display:inline-block;
		width:auto;
		height:auto;
		max-width:14px;
		max-height:14px;
	}
	
	.dev_layout_masterplan {
		border-bottom:0.25pt solid #000;
		break-inside:avoid-page;
	}
	
	.dev_layout_table {
		border-bottom:1px solid #000;
		break-inside:avoid-page;
	}
	
	.allotment_table {
		width:100%;
		border-collapse:collapse;
	}
	
	.allotment_table th {
		padding:8px;
		border-bottom:0.25pt dotted #000;
		text-align:left;
	}
	
	.allotment_table td {
		padding:8px;
		border-bottom:0.25pt dotted #000;
		text-align:left;
	}
	
	.allotment_table .houseland_icon img {
		width:16px;
		height:auto;
		vertical-align:top;
	}
	
	.allotment_table .button {
		display:none;
	}
	
	.dev_layout_contact {
		break-inside:avoid-page;
	}
	
	#page_feature {
		background:transparent!important;
	}
		
}