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

:root {

    /* --dark-blue: #005154; */
	--dark-blue: #043e40;
    --dark-gold: #A0862F;
    /* --dark-green: #005154; */
	--dark-green:#043e40;
    --dark-red: #8f5440;
    --light-blue: #4886A5;
    --light-gold: #A0862F;
    --light-green: #9aa8a6;
    --light-red: #ab7f70;
    --warm-grey-1: #f3f3f0;
    --warm-grey-2: #e9e8e4;

}

@media screen {

	/* ---------------- overall ---------------- */

	@font-face{
        font-family: 'BeausiteGrand';
        src: url('https://stjamesliving.com.au/images/site_stjames/fonts/BeausiteGrandWeb-Regular.woff2') format('woff2'),
             url('https://stjamesliving.com.au/images/site_stjames/fonts/BeausiteGrandWeb-Regular.woff') format('woff');
        font-weight: normal;
        font-style: normal;
    }


	body {
		font-family:Avenir,sans-serif;
		font-size:16px;
		font-weight:500;
		line-height:140%;
		letter-spacing:0.05em;
		color:var(--dark-blue);
		/* background-color: var(--dark-blue); */
	}

	.site_maxwidth{
		max-width: none;
	}
	

	a {
		color:inherit;
	}

	h1,h2,h3,h4,h5,h6 {
		color:inherit;
		letter-spacing: 0;
		font-weight: 200;
	}

	.serif{
		/*font-family:ltc-bodoni-175,bodoni,serif;*/
		font-family: 'BeausiteGrand', Avenir, sans-serif;
		letter-spacing: 0;
	}

	.btn {
		display: inline-block;
		padding: 10px 20px;
		color: #23443B;
		border: 2px solid #23443B;
		text-decoration: none;
		transition: background-color 0.3s ease;
	}

	.btn:hover {
		background-color: #23443B;
		color: #fff;
	}

	.btn.white {
		color: #fff;
		border: 2px solid #fff;
	}

	.btn.white:hover {
		background-color: #23443B;
		color: #fff;
		border: 2px solid #23443B;
	}

	/* ---- feature panels ---- */

	.panel_page_feature {
		background-color:var(--dark-blue);
		color:#fff;
		text-align:center;
	}

	.panel_page_feature .page_headline {
		text-transform:uppercase;
		letter-spacing:0.1em;
		font-weight:500;
	}

	/* ---- mouse follower ---- */
	
	#mouse_follower {
		position:relative;
		width:0;
		height:0;
		position:fixed;
		width:0px;
		height:0px;
		z-index:1000;
		pointer-events:none;
	}
	
	#mouse_follower .inner {
		display:flex;
		justify-content:center;
		align-items:center;
		width:96px;
		height:96px;
		border-radius:50%;
		background-color:var(--dark-blue);
		opacity:0;
		transform:scale(0);
		transition:opacity 0.1s, transform 0.1s;
	}
	
	#mouse_follower.show .inner {
		opacity:1;
		transform:scale(1);
		transition:opacity 0.1s, transform 0.1s;
		animation-name:'bounce_in';
		animation-duration:0.2s;
		animation-iteration-count:1;
	}
	
	#mouse_follower.active .inner {
		transform:scale(0.9);
		transition:opacity 0s, transform 0s;
	}
	
	#mouse_follower .arrow_next {
		color:#fff;
		font-weight:500;
		font-size:3em;
		line-height:100%;
	}
	
	#mouse_follower .text_next {
		color:#fff;
		font-size:16px;
		line-height:100%;
		font-weight:500;
		text-transform:uppercase;
		letter-spacing:0.1em;
	}

	#mouse_follower .icon {
		width:auto;
		height:auto;
		max-width:32px;
		max-height:32px;
	}


	/*-- Splash Loader ------------- --*/  
	#splash-loader{
		position: fixed;
		z-index: 100;
		background-color:var(--dark-gold);
		background: var(--dark-blue);
		width: 100%;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		transition: transform 1.2s ease-in-out;
		/* transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1); */
		pointer-events: none;
		transform: translateY(-100%);
		top: 0;
		left: 0;
		z-index: 9999;
	}
	
	#splash-loader.active{
		transform: translateX(0);
	}
	
	#splash-loader object{
		display: block;
		width: 67px;
		height: auto;
		margin: 0;
		padding: 0;
		transition: opacity .6s ease-out;
		opacity: 0;
		/*animation: rotate 2s linear infinite;*/
	}

	@media only screen and (min-width: 768px) {
		#splash-loader object{
			width: 95px;
		}
	}
	
	#splash-loader object.active{
		opacity: 1;
	}
	
	@keyframes rotate{
		from{
			transform: rotate(0deg);
		}
		to{
			transform: rotate(360deg);
		}
	}



	/* ---------------- buttons ---------------- */

	.line_button {
		position:relative;
		display:inline-flex;
		justify-content:space-between;
		color:var(--dark-blue);
		padding:16px 4px;
		text-decoration:none;
		font-size:1em;
		line-height:110%;
		font-weight:700;
		letter-spacing:0.1em;
	}

	.line_button:before {
		position:absolute;
		right:0;
		bottom:0;
		left:0;
		display:block;
		content:'';
		height:2px;
		background-color:var(--dark-blue);
	}

	.line_button:after {
		display:inline-block;
		content:'›';
		text-align:right;
		margin-left:32px;
	}

	.line_button.white {
		color:#fff;
	}

	.line_button.white:before {
		background-color:#fff;
	}

	.line_button.gold {
		color:var(--dark-gold);
	}

	.line_button.gold:before {
		background-color:var(--dark-gold);
	}
    
	.box_button {
		position:relative;
		display:inline-block;
		justify-content:space-between;
		padding:8px 12px;
		background-color:var(--dark-blue);
		border:2px solid var(--dark-blue);
		color:#fff;
		font-size:1em;
		font-weight:500;
		line-height:120%;
		text-decoration:none;
		text-transform:uppercase;
		letter-spacing:0.1em;
	}

	.box_button:before {
		position:absolute;
		z-index:10;
		top:0;
		right:0;
		bottom:0;
		left:0;
		display:block;
		content:'';
		background-color:#fff;
		opacity:0;
	}

	.box_button.small {
		font-size:0.9em;
		line-height:110%;
	}

	.box_button.white {
		background-color:#f5f5f5;
		border-color:#f5f5f5;
		color:var(--dark-blue);
	}

	.box_button.gold {
		background-color:var(--dark-gold);
		border-color:var(--dark-gold);
		color:#fff;
	}

	.box_button.outline {
		background-color:transparent;
		color:var(--dark-blue);
	}

	.box_button.outline.white {
		color:#fff;
	}

	.box_button.outline.gold {
		color:var(--dark-gold);
	}

	.standard_button {
		background-color:var(--dark-blue);
	}


	.video-button {
        display: inline-block; /* Ensure it's transformable */
        transition: transform 0.3s ease-in-out; /* Ensure smooth transition */
        text-decoration: none;
    }

    .video-button:hover {
        transform: scale(1.1); /* Apply the scale effect on hover */
    }


    a.register_2 {
        color: #fff;
        text-decoration: none;
        transition-duration: .2s;
    }

    .register_button_2 {
        border: 1px solid white;
        color: #fff;
        padding: 10px 15px;
        font-family: 'BeausiteGrand', Avenir, sans-serif;
        letter-spacing: 0;
        transition: transform 0.2s ease;
        width:fit-content;
        text-decoration: none;
    }

    .register_button_2:hover {
		border-color: #ceb86e;
		color: #ceb86e;
		cursor: pointer;
    }
    
    .register_button_2:hover a {
		color: #ceb86e;
	}

	/* ---------------- forms ---------------- */

	.fancybox-container .fancybox-bg{
		background-color:var(--dark-green);
		opacity:1;
	}

	.fancybox-slide--iframe .fancybox-content {
		background: var(--dark-green);
	}

	.iframe_form{
		background-color:var(--dark-green);
		color:#fff !important;
		border:0;
		letter-spacing: 0.05em;
	}

	.iframe_form h2{
		font-weight:500;
		text-transform:uppercase;
		color:#fff;
	}

	.iframe_form h4{
		letter-spacing: 0.05em;
	}

	.iframe_form p{
		color:var(--dark-gold);
		font-style:normal;
	}

	.iframe_form p[data-field-name="lotName"]{
	color: #fff;
	}

	.iframe_form  p{
		color:var(--dark-gold)
		font-style:normal;
	}


	.iframe_form  label{
		color: #fff !important;
	}

	.iframe_form  p em{
		font-style:normal;
	}

	.iframe_form  .group_heading{
		color:#fff;
	}

	.iframe_form .form .freeform-row .freeform-column .freeform-instructions{
		color:var(--dark-gold);
	}

	.iframe_form  .checkbox_label{
		background-color:var(--dark-green);
	}

	.iframe_form .freeform-row .freeform-column .freeform-input{
		background-color: var(--dark-green);
		border: 0;
		color: #fff;
		border-bottom: 0.5px solid white;
		border-radius: 0;
		font-size: 18px;
	}

	.iframe_form .form input[type="text"],
	.iframe_form .form input[type="email"],
	.iframe_form .form input[type="number"],
	.iframe_form .form input[type="tel"],
	.iframe_form .form input[type="password"],
	.iframe_form .form input[type="text"]{
		border:1px solid rgba(255,255,255,0.5);
		color:#fff;
	}

	.iframe_form .freeform-row .freeform-column .freeform-input:focus{
		border-bottom: 0.5px solid white;
	}

	.iframe_form .form input[type="text"]:focus,
	.iframe_form .form input[type="email"]:focus,
	.iframe_form .form input[type="number"]:focus,
	.iframe_form .form input[type="tel"]:focus,
	.iframe_form .form input[type="password"]:focus,
	.iframe_form .form input[type="text"]:focus{
		border:1px solid rgba(255,255,255,1);
	}

	.iframe_form  button{
		background-color:var(--dark-gold);
		color:#fff;
	}

	.iframe_form .freeform-row button{
		background-color:var(--dark-gold);
		letter-spacing: 0.05em;
	}

	.iframe_form .consultant_thumbnail_wrap{
	display: none !important;
	}

	.fancybox-button {
		background: none;
		border: 0;
		border-radius: 0;
		cursor: pointer;
		display: inline-block;
		height: 50px;
		transition: color .2s;
		vertical-align: top;
		visibility: inherit;
		width: 50px;
		margin: 30px;
	}


	@media(min-width: 768px) {
		.form_button {
			bottom: 140px;
		}
		.form_button a {
			font-size: 1.1em;
			border-bottom: 0;
		}

		.fancybox-button {
			height: 70px;
			width: 70px;
		}
		
	}
  

	/* ---------------- header ---------------- */

	#fairland_bar{
		background: var(--dark-blue);
		box-shadow: none;
		
	}

	#fairland_bar ul{
		background-color: #043e40;
	}

	#fairland_bar .logo img {
		filter: grayscale(100%) brightness(300%);
		opacity: 0.5;
	}

	#fairland_bar .dropdown .dropdown_link {
		color: #fff;
		opacity:0.5;
	}

	#fairland_bar .dropdown ul li a:hover {
		background-color:var(--dark-gold);
	}

	body[data-entry-slug='__home__'] #land_site_header {
		
	}


	/* Initial large header */
	#land_site_header {
		position: sticky;
		top: 0;
		z-index: 500;
		transition: all 0.3s ease-in-out;
	}

	body[data-page-id='page-263336'] #land_site_header {
		position: relative;
	}



	#land_site_header .nav_container .nav_close_wrap{
		justify-content: flex-start;
		margin-top: 0;
	}

	#land_site_header .header_bar {
		/* background-color:transparent; */
		background-color: var(--dark-blue);
		position: relative;
		height: 128px;
		padding: 40px;
		transition: all 0.3s ease-in-out;
	}


	body[data-page-id='page-237602'] #land_site_header .header_bar {
		background-color: transparent;
		position: absolute;
	}


	#land_site_header .nav_container .background {
		background-color: var(--dark-blue);
	}

	#land_site_header .nav_container .foreground {
		background-color:var(--dark-blue);
		width:85%;
		left: 0;
	}

	#land_site_header .header_bar .nav_open .label {
		display:none;
	}

	#land_site_header .header_bar .nav_open img,
	#land_site_header .nav_container .nav_close img{
		width:20px;
		height:auto;
	}


	#land_site_header .header_bar .register_button {
		border: 1px solid white;
		color: #fff;
		padding: 5px 10px;
		font-family: 'BeausiteGrand', Avenir, sans-serif;
		letter-spacing: 0;
		transition: transform 0.2s ease;
		width:fit-content;
	}

	#land_site_header.shrunk .header_bar .register_button {
		transform: scale(.8);
	}

	#land_site_header .header_bar .register_button:hover {
		border-color: #ceb86e;
		color: #ceb86e;
		cursor: pointer;

	}

	#land_site_header .header_bar .register_button:hover a {
		color: #ceb86e;
	}

	#land_site_header .nav_container .nav_close .label {
		display:none;
	}

	#land_site_header.open .nav_container{
		background: var(--dark-blue);
	}

	#land_site_header.open .nav_container{
		
	}

	#land_site_header.open .nav_container .nav_items {
		padding:0 0 16px 0;
		/* border-bottom:2px solid var(--dark-gold); */

	}
	
	#land_site_header .nav_container .nav_items li a {
		font-size:2em;
		font-weight:500;
		line-height:110%;
		padding:8px 0;
		text-transform:lowercase !important;
		font-family: 'BeausiteGrand', sans-serif;
	}

	#land_site_header .logo img {
		filter: brightness(0) invert(1);
	}

	#land_site_header.show-nav-menu-items .logo img {
		filter: none;
	}




	#land_site_header.pre-shrunk-version .header_bar {
		height: 125px;
		margin: 0 auto;
		padding: 0 5%;
		transition: all 0.4s ease;
		z-index: 2;
		overflow: hidden;
		position: relative;
	}
	
	/* Keep the height but visually collapse the content */
	#land_site_header.pre-shrunk-version.shrunk .header_bar {
		background-color: var(--dark-green);
	}
	
	#land_site_header.pre-shrunk-version .logo img {
		width: 45px;
		transition: transform 0.4s ease;
	}
	
	#land_site_header.pre-shrunk-version.shrunk .logo img {
		transform: scale(0.67); /* 30px / 45px = 0.666... */
	}


	/**/
	#land_site_header .header_bar a.nav-menu{
		/* height: auto; */
		flex-grow: 1;
		flex-basis: 0;
	}

	#land_site_header .header_bar a.logo {

	}

	#land_site_header .header_bar a.register {
		flex-grow: 1;
		flex-basis: 0;
		justify-content: flex-end;
    	display: flex;
	}



	#land_site_header a.nav-menu img{
		display: block;
		width: 100%;
		height: 100%;
		object-fit: contain;
		max-width:25px;
	}

	#land_site_header .nav-menu-items{
		display: block;
		width: 100%;
		height: 100vh;
		background: #053e41;
		color: #fff;
		opacity: 1;
		pointer-events: none;
		transform: translateY(-100vh);
		position: absolute;
		transition: transform 1.5s ease;
	}
	
	#land_site_header .nav-menu-items ul li {
		opacity: 0;
		transform: translateY(20px);
		transition: opacity 0.6s ease, transform 0.6s ease;
	}

	#land_site_header.show-nav-menu-items .nav-menu-items {
		opacity: 1;
		pointer-events: all;
		transform: translateY(0);
		transition: transform 1s ease;
	}
	
	#land_site_header.show-nav-menu-items .nav-menu-items ul li {
		opacity: 1;
		transform: translateY(0);
	}
	
	#land_site_header.show-nav-menu-items .nav-menu-items ul li:nth-child(1) {
		transition-delay: 0.2s;
	}
	
	#land_site_header.show-nav-menu-items .nav-menu-items ul li:nth-child(n+2):nth-child(-n+7) {
		transition-delay: calc(0.2s * var(--i));
	}
	
	#land_site_header.show-nav-menu-items .nav-menu-items ul li:nth-child(2) { --i: 2; }
	#land_site_header.show-nav-menu-items .nav-menu-items ul li:nth-child(3) { --i: 3; }
	#land_site_header.show-nav-menu-items .nav-menu-items ul li:nth-child(4) { --i: 4; }
	#land_site_header.show-nav-menu-items .nav-menu-items ul li:nth-child(5) { --i: 5; }
	#land_site_header.show-nav-menu-items .nav-menu-items ul li:nth-child(6) { --i: 6; }
	#land_site_header.show-nav-menu-items .nav-menu-items ul li:nth-child(7) { --i: 7; }
	

	#land_site_header .nav-menu-items ul li a{
		font-family: 'BeausiteGrand', Avenir, sans-serif;
	}
	
	#land_site_header.show-nav-menu-items .nav-menu-items ul li a{
		opacity: 1;
	}

	body[data-page-id='page-237602'] #land_site_header .nav-menu-items > div {
		padding: 150px 5% 0;
		max-height: calc(100vh - 250px);
		overflow-y: auto;
	}

	#land_site_header .nav-menu-items > div{
		padding: 0 5% 0;
	}


	#land_site_header .nav-menu-items ul{
		list-style-type: none;
		padding: 0;
		margin: 0;
	}


	#land_site_header .nav-menu-items ul li{
		margin: 5px 0;
	}

	#land_site_header .nav-menu-items ul li a{
		display: block;
		width: fit-content;
		text-decoration: none;
		font-size: 24px;
		padding: 10px;
		opacity: 0;
		transition: color .2s, opacity 2s ease;
	}

	#land_site_header .nav-menu-items ul li a:hover{
		color: var(--dark-gold);
	}

	@media (max-width: 768px) {
		#land_site_header.pre-shrunk-version .header_bar {
			height: 60px;
		}
	
		#land_site_header.pre-shrunk-version.shrunk .header_bar {
			height: 60px;
		}

		#land_site_header.pre-shrunk-version .logo img {
			width: 30px;
		}
	
		#land_site_header.pre-shrunk-version.shrunk .logo img {
			width: 30px;
		}

		#land_site_header .header_bar .register_button {
			transform: scale(.8);
		}
	}



	/* ---------------- footer ---------------- */

	#stjames_footer {
		text-align:center;
		background-color: var(--dark-blue);
		color: #fff;
	}

	#stjames_footer .panel_padding {
		padding:48px 0;
	}

	#stjames_footer .row_top {
		display:flex;
		flex-direction:column;
		margin:-16px 0;
	}

	#stjames_footer .row_top .col {
		display:flex;
		flex-direction:column;
		align-items:center;
		margin:16px 0;
	}

	#stjames_footer .row_top .col .name {
		margin:0 0 4px 0;
		font-size:1.2em;
		font-weight:500;
		line-height:110%;
		color:var(--dark-gold);
	}

	#stjames_footer .row_top .col .phone {
		display:block;
		margin:4px 0;
		font-size:1.2em;
		font-weight:500;
		line-height:110%;
		text-decoration:none;
	}

	#stjames_footer .row_top .col .email {
		display:block;
		margin:4px 0 0 0;
		font-size:0.9em;
		text-decoration:none;
	}

	#stjames_footer .row_top .col .line {
		width:64px;
		height:2px;
		margin:16px 0 0 0;
		background-color:var(--dark-gold);
	}

	#stjames_footer .row_top .col .logo {
		display:block;
	}

	#stjames_footer .row_top .col .logo .img {
		display:block;
		width:92px;
		height:auto;
	}

	#stjames_footer .row_bot {
		margin:48px 0 0 0;
		font-size:0.9em;
		line-height:130%;
	}

	#stjames_footer .row_bot .item {
		display:block;
		text-decoration:none;
	}

	#stjames_footer .row_bot .divider {
		display:none;
		margin:0 8px;
	}

	/* ---------------- home ---------------- */

	#stjames_home .home_feature {
		position:relative;
		background-color:var(--dark-blue);
		color:#fff;
		min-height:800px;
	}

	#stjames_home .home_feature .bg {
		position:absolute;
		z-index:10;
		top:0;
		right:0;
		bottom:0;
		left:0;
	}

	#stjames_home .home_feature .bg .img {
		object-fit:cover;
		width:100%;
		height:100%;
	}

	#stjames_home .home_feature .fg {
		position:absolute;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		left:0;
	}

	#stjames_home .home_feature .box {
		position:absolute;
		z-index:20;
		top:16px;
		right:16px;
		bottom:16px;
		left:16px;
		display:flex;
		flex-direction:column;
		justify-content:space-between;
		align-items:center;
		text-align:center;
		padding:24px;
		box-sizing:border-box;

	}

	#stjames_home .home_feature .box .row_logo {
		
	}

	#stjames_home .home_feature .box .row_logo .logo {
		text-decoration:none;
	}

	#stjames_home .home_feature .box .row_logo .img {
		width:180px;
    max-width: 100%;
		height:auto;
		vertical-align:top;
    margin-top: 20px;
	}


	#stjames_home .home_feature .box .row_headline .headline{
		font-size: 50px;
	}

	#stjames_home .home_feature .box .row_headline .headline .mobile-show{
		display: block;
	}


	#stjames_home .home_feature .box .row_headline .headline .img {
		width:280px;
		max-width: 100%;
		height:auto;
		vertical-align:top;
	}

	#stjames_home .home_feature .box .row_headline .actions .box_button{
		text-transform: none;
		letter-spacing: 0;
		border-radius: 40px;
	}

	#stjames_home .home_feature .box .row_headline .subline {
		color:var(--light-gold);
		margin:16px auto 0;
		text-shadow:1px 1px 4px rgba(0,0,0,0.5);
		line-height:140%;
		max-width: 260px;
	}


	.video-button > div {
		display:flex;
		justify-content: center; 
		align-items: center;
	}

	.video-button > div > img {
		width: 20px; 
		margin-right: 15px;
	}

	.video-button > div > span {
		color:#fff; 
		font-size:16px;
	}

	#stjames_home .home_feature .box .row_nav {
		text-shadow:1px 1px 4px rgba(0,0,0,0.5);
	}

	#stjames_home .home_feature .box .row_nav .item {
		display:inline-block;
		text-decoration:none;
		text-transform:uppercase;
		letter-spacing:0.2em;
		font-size:1em;
		line-height:140%;
		padding:0 8px;
	}

	#stjames_home .home_feature .box .row_nav .divider {
		display:inline-block;
		margin:0;
		font-size:1em;
		line-height:140%;
	}
  
  
  /*-- bigger button override --*/
  #stjames_home .home_feature .line_button.gold{
    background-color: var(--dark-gold);;
    color: #fff;
    padding: 20px 40px;
    border: none !important;
    text-decoration: none;
    font-size: 16px;
    text-transform: uppercase;
    border-radius: 2px;
    transition-duration: .2s;
    /*animation: scottGlowingButton 2000ms infinite;*/
  }
  
  #stjames_home .home_feature .line_button.gold:hover{
    background-color: var(--light-gold);
  }
  
  @keyframes scottGlowingButton {
    0% {
    }
    50% {
      box-shadow: 0 0 40px #b3a57a;
    }
    100% {
    }
  }
  /*-- end of: bigger button override --*/
  

	#stjames_home .home_vision {
		padding:32px 0;
	}

	#stjames_home .home_vision .cols {
		display:flex;
		flex-direction:column;
	}

	#stjames_home .home_vision .col_image {
		width:calc(100% - 16px);
		height:192px;
	}

	#stjames_home .home_vision .col_image .img {
		object-fit:cover;
		width:100%;
		height:100%;
	}

	#stjames_home .home_vision .col_text {
		box-sizing:border-box;
		display:flex;
		justify-content:center;
		align-items:center;
		padding:24px;
	}

	#stjames_home .home_vision .col_text .headline {
		font-size:1.6em;
		line-height:110%;
		font-weight:500;
		letter-spacing:0.2em;
		text-transform:uppercase;
		margin:0 0 16px 0;
	}

	#stjames_home .home_vision .col_text .excerpt {
		font-size:1em;
		line-height:140%;
	}

	#stjames_home .home_vision .col_text .actions {
		margin:16px 0 0 0;
	}

	#stjames_home .home_lifestyle {
		background-color:var(--dark-blue);
		color:#fff;
		padding:16px;
	}

	#stjames_home .home_lifestyle .box {
		box-sizing:border-box;
		padding:24px;
		border:2px solid var(--dark-gold);
	}

	#stjames_home .home_lifestyle .cols {
		display:flex;
		flex-direction:column;
	}

	#stjames_home .home_lifestyle .col_image {
		display:flex;
		height:128px;
		margin-bottom:24px;
	}

	#stjames_home .home_lifestyle .col_image .image {
		background-color:var(--dark-gold);
	}

	#stjames_home .home_lifestyle .col_image .image_1 {
		margin:0 8px 0 0;
		flex:1 1 25%;
	}

	#stjames_home .home_lifestyle .col_image .image_2 {
		margin:0 8px 0 0;
		flex:1 1 15%;
	}

	#stjames_home .home_lifestyle .col_image .image_3 {
		margin:0 8px 0 0;
		flex:1 1 50%;
	}

	#stjames_home .home_lifestyle .col_image .image .img {
		object-fit:cover;
		width:100%;
		height:100%;
	}

	#stjames_home .home_lifestyle .col_text {
		box-sizing:border-box;
		display:flex;
		justify-content:center;
		align-items:center;
	}

	#stjames_home .home_lifestyle .col_text .headline {
		font-size:1.6em;
		line-height:110%;
		font-weight:500;
		letter-spacing:0.2em;
		text-transform:uppercase;
		margin:0 0 16px 0;
	}

	#stjames_home .home_lifestyle .col_text .excerpt {
		font-size:1em;
		line-height:140%;
	}

	#stjames_home .home_lifestyle .col_text .actions {
		margin:16px 0 0 0;
	}

	#stjames_home .home_announcements {
		background-color:var(--warm-grey-1);
	}

	#stjames_home .home_announcements .items {
		display:flex;
		flex-direction:column;
		margin:-8px 0;
	}

	#stjames_home .home_announcements .items .item {
		display:flex;
		flex-direction:column;
		margin:8px 0;
		background-color:#fff;
		text-decoration:none;
	}

	#stjames_home .home_announcements .items .item .image {
		position:relative;
		height:192px;
		background-color:var(--dark-blue);
	}

	#stjames_home .home_announcements .items .item .image .img {
		position:relative;
		z-index:10;
		width:100%;
		height:100%;
		object-fit:cover;
	}

	#stjames_home .home_announcements .items .item .image .overlay {
		position:absolute;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#fff;
		opacity:0;
	}

	#stjames_home .home_announcements .items .item .content {
		flex:1 1 auto;
		display:flex;
		flex-direction:column;
		justify-content:space-between;
		padding:16px;
	}

	#stjames_home .home_announcements .items .item .text {
		flex:1 1 100%;
	}

	#stjames_home .home_announcements .items .item .headline {
		font-size:1.2em;
		line-height:120%;
		text-transform:uppercase;
		margin:0 0 8px 0;
	}

	#stjames_home .home_announcements .items .item .excerpt {
		font-size:1em;
		line-height:140%;
	}

	#stjames_home .home_announcements .items .item .actions {
		margin:16px 0 0 0;
	}

	#stjames_home .home_faq {

	}

	#stjames_home .home_faq .panel_maxwidth {
		max-width:768px;
	}

	#stjames_home .home_faq .panel_padding {
		padding:48px 0;
	}

	#stjames_home .home_faq .row_headline {
		width:90%;
		max-width:600px;
		margin:0 auto 32px auto;
	}

	#stjames_home .home_faq .row_headline .headline {
		font-size:1.6em;
		font-weight:500;
		line-height:110%;
		text-transform:uppercase;
		letter-spacing:0.2em;
		margin:0 0 16px 0;
	}

	#stjames_home .home_faq .row_headline .excerpt {
		margin:0;
		font-size:1em;
		font-weight:500;
		line-height:140%;
		color:var(--dark-gold);
	}

	#stjames_home .home_faq .row_headline .line {
		width:128px;
		height:2px;
		background-color:var(--dark-gold);
		margin-top:24px;
	}

	#stjames_home .home_faq .row_questions {

	}

	#stjames_home .home_faq .item {
		margin:0 0 8px 0;
		background-color:#f5f5f5;
	}

	#stjames_home .home_faq .item .question {
		display:flex;
		text-decoration:none;
		font-size:1.1em;
		line-height:120%;
		font-weight:700;
		padding:16px 16px 16px 0;
	}

	#stjames_home .home_faq .item .question .icon {
		display:flex;
		justify-content:center;
		align-items:center;
		flex:0 0 40px;
	}

	#stjames_home .home_faq .item .question .icon .plus {
		display:block;
	}

	#stjames_home .home_faq .item .question .icon .minus {
		display:none;
	}

	#stjames_home .home_faq .item .answer {
		display:none;
		padding:0 16px 24px 40px;
	}

	#stjames_home .home_faq .item.open .answer {
		display:block;
		font-size:1em;
		line-height:130%;
	}

	#stjames_home .home_faq .item.open .question .icon .plus {
		display:none;
	}

	#stjames_home .home_faq .item.open .question .icon .minus {
		display:block;
	}

	#stjames_home .home_faq .row_disclaimer {
		margin:24px 0 0 0;
		font-size:0.9em;
		line-height:130%;
		color:#999;
	}

	.panel_location_map {
		position:relative;
		padding:16px;
		background-color:var(--dark-green);
		color:#fff;
	}

	.panel_location_map .box {
		box-sizing:border-box;
		padding:24px;
		border:2px solid var(--dark-gold);
	}

	.panel_location_map .cols {
		display:flex;
		flex-direction:column;
	}

	.panel_location_map .col_map {
		margin:0 0 24px 0;
	}

	.panel_location_map .col_map .map {
		position:relative;
		display:block;
	}

	.panel_location_map .col_map .map .img {
		position:relative;
		z-index:10;
		width:100%;
		height:auto;
		vertical-align:top;
	}

	.panel_location_map .col_map .map .img.img_full {
		display:none;
	}

	.panel_location_map .col_map .map .img.img_simple {
		display:block;
	}

	.panel_location_map .col_legend {

	}

	.panel_location_map .legend {
		display:none;
	}

	.panel_location_map .legend .legend_group {
		margin:16px 0;
	}

	.panel_location_map .legend .legend_headline {
		margin:0 0 8px 0;
	}

	.panel_location_map .legend .legend_headline .headline {
		font-size:1.2em;
		font-weight:700;
		line-height:120%;
	}

	.panel_location_map .legend .legend_items {
		
	}

	.panel_location_map .legend .legend_item {
		display:flex;
		font-size:1em;
		line-height:120%;
		margin:8px 0;
	}

	.panel_location_map .legend .legend_item .circle {
		display:flex;
		justify-content:center;
		align-items:center;
		flex:0 0 16px;
		width:16px;
		height:16px;
		font-size:0.8em;
		line-height:100%;
		margin:4px 12px 0 0;
		background-color:#fff;
		color:var(--dark-green);
		font-weight:700;
		border-radius:50%;
		overflow:hidden;
	}

	.panel_location_map .legend .legend_item[data-type='education'] .circle {
		background-color:var(--light-gold);
	}

	.panel_location_map .legend .legend_item[data-type='shopping'] .circle {
		background-color:var(--light-red);
	}

	.panel_location_map .legend .legend_item[data-type='dining'] .circle {
		background-color:var(--light-blue);
	}

	.panel_location_map .legend .legend_item[data-type='recreation'] .circle {
		background-color:var(--light-green);
	}

	.panel_location_map .legend .legend_item .text {

	}

	.panel_location_map .actions {
		margin:24px 0 0 0;
	}

	.panel_location_map .actions .box_button {
		margin:8px 0 0 0;
	}

	.panel_with_box {
		position:relative;
		background-color:var(--dark-gold);
		text-align:center;
	}

	.panel_with_box .panel_padding {
		padding:48px 0;
	}

	.panel_with_box .bg {
		position:absolute;
		z-index:10;
		top:0;
		right:0;
		bottom:0;
		left:0;
	}

	.panel_with_box .bg .img {
		object-fit:cover;
		width:100%;
		height:100%;
	}

	.panel_with_box .fg {
		position:relative;
		z-index:20;
		display:flex;
		justify-content:center;
		align-items:center;
	}

	.panel_with_box .box {
		padding:12px;
		background-color:var(--dark-blue);
		color:#fff;
	}

	.panel_with_box .box .inner {
		padding:30px;
		border:2px solid var(--dark-gold);
	}

	.panel_with_box .box .row_text {
		
	}

	.panel_with_box .box .headline {
		font-size:1.4em;
		font-weight:500;
		line-height:120%;
	}

	.panel_with_box .box .headline br {
		display:none;
	}

	.panel_with_box .box .row_actions {
		margin:24px 0 0 0;
	}

	/* ---- home v2 ---- */

	body[data-entry-id='194650'] #land_site_header .header_bar {
		padding:32px;
		height:auto;
	}

	#stjames_home .home_feature_v2 {

		height: 100vh;
	}

	#stjames_home .home_feature_v2.backpage {
		height: 80vh;
	}


	#stjames_home .home_feature_v2 .box {
		justify-content:center;
	}
  
	#stjames_home .home_feature_v2 .bg {
		overflow: hidden;
	}

	#stjames_home .home_feature_v2 .bg .iframe_wrap {
		position:absolute;
		top:0;
		left:0;
		min-width:100%;
		min-height:100%;
		aspect-ratio:1920/1080;
	}

	#stjames_home .home_feature_v2 .bg .home_feature_bg_video {
		position:absolute;
		top:0;
		left:0;
		width:100%;
		height:100%;
		pointer-events:none;
		/* animation-name:home-fade-video-bg;
		animation-duration:3s;
		animation-iteration-count:1;
		animation-fill-mode:forwards;*/
	}

	#stjames_home .home_feature_v2 .bg .overlay {
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		left:0;
		z-index: 99;
		background-color:rgba(0,0,0,0.3);
	}

	#stjames_home .home_feature .box .row_headline .actions {
		margin:16px 0 0 0;
	}

	#stjames_home .home_feature .box .row_headline .actions .line_button:after {
		display:none;
	}


	/* Additions 26 Sep 2024 */

	.carousel-container {
		padding: 100px 0;
	}

	.container-svg {
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		position: relative; /* For positioning child elements */
		background-color: var(--dark-blue);
		overflow: visible;
		padding: 10% 0;
	}

	#myPath {
		transition: stroke-dashoffset 0.2s ease;
		stroke-width: 35;
		stroke: #aaa; /* Stroke color */
		fill: none; /* No fill color */
		/* Center the SVG in the container */
		/* transform: translateY(-50%); */
		transform: translateX(0%) translateY(0%);
		opacity:0.15;
	}
	.snake-svg {
		position: absolute; /* Positioning to center the SVG */
		height:4000px;
		z-index:20;
	}

	.container-svg-text {
        z-index: 1;
		padding: 50px;
		z-index:30;
		display: flex;
		flex-direction: column;
		align-items: center;
    }

	.container-svg-text .cta_buttons {
        display:flex; 
		gap:20px;
		flex-direction: row;
    }

    .container-svg-text p {
        color:#fff; 
        text-align:center;
        margin:0 auto;
        font-size:20px;
        max-width:700px;
        line-height: 150%;
		margin-bottom: 30px;
    }

	@media (max-width: 768px) {

		.container-svg-text p {
			font-size:16px;
		}

		.container-svg-text .cta_buttons {
			display:flex; 
			gap:20px;
			flex-direction: column;
		}
	}

	/* Text & image panels */

	.panel-container {
		display: flex;
		justify-content: space-between;
		align-items: center;
		/* max-width: 1200px; */
		margin: 50px auto;
		padding: 20px;
	}

	/* This class swaps the order */
	.panel-container.reverse {
		flex-direction: row-reverse;
	}

	.panel-container.reverse .text-content {
		flex-direction: row-reverse;
		margin-left: 50px;
	}

	.panel-container .text-content {
		flex: 1;
		margin-right: 20px;
		z-index:20;
	}

	.panel-container .text-content h2 {
		font-size: 2rem;
		color: #23443B; /* Greenish color */
		margin-bottom: 10px;
	}

	.panel-container .text-content p {
		margin: 20px 0;
		color: #23443B; /* Same color as heading */
		width: 90%;
	}



	.panel-container .image-content {
		flex: 1;
		width: 100%;
		z-index: 20;
	}

	.panel-container .image-content img {
		max-width: 100%;
		height: auto;
		/* object-fit: cover;
		width: 100%;
		height: 100%; */
	}


	@media (max-width: 768px) {
		.panel-container {
			flex-direction: column-reverse;
		}

		/* On mobile, make sure the image is always on top */
		.panel-container.reverse {
			flex-direction: column-reverse;
		}

		.panel-container .text-content {
			padding-right: 0;
			margin-bottom: 20px;
			text-align: center;
		}

		.carousel-container {
			flex-direction: column;
		}

		.card {
			flex-direction: column;
		}

		.panel-container .text-content p {
			width: 100%;
		}

		.panel-container.reverse .text-content {
			margin: 20px 0 0 0;
		}

		.panel-container .text-content {
			margin: 20px 0 0 0;
		}

		#stjames_home .home_feature_v2.backpage {
			min-height: 200px;
			height: auto;
		}

	}
	

	/*------------------------------------------- Embla Carousel -------------------------------------------*/

	.embla {
		position: relative;
		overflow: hidden;
	}
	
	.embla__viewport {
		overflow: hidden;
		width: 100%;
	}
	
	.embla__container {
		display: flex;
		height: 100vh;
	}
	
	.embla__slide {
		flex: 0 0 100%;
		height: 100%;
		align-items: center;
		justify-content: center;
		font-size: 2rem;
		/* margin: 20px; */
		overflow: hidden;
		position: relative;
	}
	

	.embla__slide .overlay {
		position: absolute;
		top: 0px;
		left: 0px;
		/* background: linear-gradient(0deg, rgba(60,60,60,1) 0%, rgba(255,255,255,0) 60%);	 */
		background: rgba(0, 0, 0, 0.3);
		width: 100%;
		height: 100%;
		pointer-events: none;
		z-index:99;
	}
	
	.embla__slide img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		will-change: transform;
  		transition: transform 0.2s ease-out;
	}

	.embla__slide .title {
		position:absolute; 
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		color: #fff;
		z-index: 99;
		text-align: center;
		width: 75%;
	}

	.embla__button {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		z-index: 10;
		background-color: rgba(4, 62, 64, 0.6);
		color: #fff;
		border: none;
		border-radius: 50%;
		width: 40px;
		height: 40px;
		cursor: pointer;
		font-size: 24px;
		display: flex;
		align-items: center;
		justify-content: center;
	  }
	  
	  .embla__button--prev {
		left: 30px;
	  }
	  
	  .embla__button--next {
		right: 30px;
	  }
	  
	  .embla__button:hover {
		background-color: rgba(4, 62, 64, 0.9);
	  }


	  .embla__slide .title h1 {
		margin: 0.5em 0 0.75em 0;
		font-size: 70px;
	}


	@media (max-width: 768px) {
		.embla__slide .title h1 {
			font-size: 40px;
		}

		.embla__button {
			bottom: 10px;
			top: unset;
		}

		.embla__button--prev {
			left: 35%;
		}

		.embla__button--next {
			right: 35%;
		}

	}
	  






	/* ---------------- house and land ---------------- */

	body[data-type-id='24'] #land_site_header .header_bar {
		background-color:#fff;
	}

	.stjames_houseland_feature {
		position:relative;
		display:flex;
		justify-content:center;
		align-items:center;
		background-color:var(--dark-blue);
		color:#fff;
		min-height:256px;
		text-align:center;
	}

	.stjames_houseland_feature .bg {
		position:absolute;
		z-index:10;
		top:8px;
		right:8px;
		bottom:8px;
		left:8px;
		border:2px solid var(--dark-gold);
	}

	.stjames_houseland_feature .bg .border {
		
	}

	.stjames_houseland_feature .inner {
		position:relative;
		z-index:20;
		padding:48px 32px;
		max-width:600px;
	}

	.stjames_houseland_feature .logo {
		margin:0 0 24px 0;
	}

	.stjames_houseland_feature .logo .img {
		width:auto;
		height:auto;
		max-width:128px;
		max-height:96px;
		vertical-align:top;
	}

	.stjames_houseland_feature .headline {
		font-size:1em;
		font-weight:500;
		line-height:110%;
		text-transform:uppercase;
	}

	.stjames_houseland_feature .headline .big {
		font-size:2em;
		line-height:110%;
		letter-spacing:0.1em;
	}

	.stjames_houseland_feature .headline .small {
		margin:16px 0 0 0;
		font-size:1.2em;
		color:var(--dark-gold);
	}

	.stjames_houseland_feature .excerpt {
		margin:24px 0 0 0;
		font-size:0.9em;
		line-height:130%;
	}

	.stjames_houseland_main {
		background-color:#f6f5f2;
		color:var(--dark-blue);
	}

	.stjames_houseland_main .panel_maxwidth {
		max-width:1280px;
	}

	.stjames_houseland_filter_bar {
		position:relative;
		z-index:20;
		display:flex;
		justify-content:center;
		align-items:center;
		padding:24px;
		background-color:#fff;
		margin:0 0 32px 0;
	}

	.stjames_houseland_filter_bar .cols {
		display:flex;
		flex-direction:column;
		flex:1 1 100%;
		max-width:768px;
		margin:-8px 0;
	}

	.stjames_houseland_filter_bar .cols[data-cols='4'] {
		max-width:1024px;
	}

	.stjames_houseland_filter_bar .col {
		margin:8px 0;
	}

	.stjames_houseland_filter_bar .col .label {
		display:block;
		margin:0 0 4px 0;
		font-size:1em;
		line-height:110%;
		text-transform:uppercase;
	}

	.stjames_houseland_filter_bar .col .dropdown {
		box-sizing:border-box;
		display:flex;
		justify-content:space-between;
		align-items:center;
		border:1px solid var(--dark-blue);
		color:var(--dark-blue);
		background-color:#fff;
		width:100%;
		height:48px;
		padding:0 12px;
		border-radius:0;
	}

	body[data-site-handle='site_stjames'] .dev_layout_houseandland .panel_maxwidth {
		max-width:1280px;
	}

	body[data-site-handle='site_stjames'] .dev_layout_houseandland .listing_items.more.show {
		display:flex;
	}

	body[data-site-handle='site_stjames'] .listing_items {
		position:relative;
		z-index:10;
		display:flex;
		flex-direction:column;
		margin:-8px 0;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing {
		box-sizing:border-box;
		display:flex;
		display:none;
		flex-direction:column;
		padding:8px;
		margin:8px 0;
		background-color:#fff;
		border:1px solid #ccc;
		text-decoration:none;
		text-align:center;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing.show {
		display:flex;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_image {
		background-color:#ccc;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_image .image {
		position:relative;
		height:160px;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_image .img {
		position:relative;
		z-index:10;
		object-fit:cover;
		width:100%;
		height:100%;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_image .image .overlay {
		position:absolute;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#fff;
		opacity:0;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_image .image .status {
		position:absolute;
		z-index:30;
		right:4px;
		bottom:4px;
		display:flex;
		align-items:center;
		padding:8px 12px;
		background-color:#eee;
		color:var(--dark-blue);
		font-size:1em;
		line-height:110%;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_image .image .status .dot {
		display:inline-block;
		width:8px;
		height:8px;
		background-color:var(--dark-blue);
		border-radius:50%;
		margin:0 8px 0 0;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing[data-status='onHold'] .row_image .image .status {
		background-color:#e9e6b1;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_image .image .logo_box {
		position:absolute;
		z-index:30;
		display:flex;
		justify-content:center;
		align-items:center;
		top:4px;
		right:4px;
		width:64px;
		height:64px;
		background-color:#fff;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_image .image .logo_box .logo {
		width:auto;
		height:auto;
		max-width:48px;
		max-height:48px;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_image .image .logo_box .logo[src*='bradford'] {
		max-width:64px;
		max-height:64px;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text {
		display:flex;
		flex-direction:column;
		justify-content:space-between;
		padding:0;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text .row_top {
		padding:24px 8px;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text .design_name {
		font-size:1.4em;
		font-weight:700;
		line-height:110%;
		margin:0;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text .address {
		font-size:0.9em;
		line-height:110%;
		margin:4px 0 0 0;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text .rooms {
		display:flex;
		align-items:center;
		justify-content:center;
		margin:16px -8px 0 -8px;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text .rooms .room {
		display:flex;
		align-items:center;
		margin:0 8px;
		font-size:1em;
		font-weight:500;
		line-height:110%;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text .rooms .room .icon {
		width:auto;
		height:auto;
		max-width:24px;
		max-height:24px;
		margin:0 8px 0 0;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text .row_bot {
		font-size:1em;
		font-weight:500;
		line-height:110%;
		text-transform:uppercase;
		color:var(--dark-blue);
		padding:16px 0;
		background-color:#f9f8f7;
		opacity:0.5;
	}

	/* ---------------- house and land detail ---------------- */

	body[data-section-id='29'] #land_site_header .header_bar {
		background-color:var(--dark-blue);
		color:#fff;
	}

	#listing_detail_2023 {

	}

	#listing_detail_2023 .section_top .col_gallery .actions .action {
		background-color:var(--dark-blue);
	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary {
		position:relative;
		background-color:var(--dark-blue);
		color:#fff;
		padding:48px 32px;
		justify-content:center;
		align-items:center;
		text-align:center;
	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary:before {
		position:absolute;
		z-index:10;
		top:12px;
		right:12px;
		bottom:12px;
		left:12px;
		display:block;
		content:'';
		border:2px solid var(--dark-gold);
	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary .col_image {
		position:relative;
		z-index:20;
	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary .image {
		width:96px;
		height:96px;
	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary .col_text {
		position:relative;
		z-index:20;
	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary .name {
		text-transform:uppercase;
		letter-spacing:0.1em;
	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary .actions .box_button {
		background-color:var(--dark-gold);
	}

	#listing_detail_2023 .section_bot .listing_flavour .headline {
		text-transform:uppercase;
		letter-spacing:0.1em;
	}

	#listing_detail_2023 .section_bot .listing_flavour .subline {
		color:var(--dark-gold);
		filter:brightness(0.75);
	}


	/*----------------- release page -----------------*/

	.release_table h2 {
		font-size: 2rem;
		color: #23443B;
	}

	.release_table {
		padding: 20px;
		margin: 100px 0;
	}

	.mobile-accordion {
		display: none;
	}

	.release_table .table_component {
		overflow: auto;
		/* width: 100%; */
		/* border: 1.5px solid;
		padding: 30px; */
	}


	.release_table .table_component table {
		height: 100%;
		width: 100%;
		table-layout: fixed;
		border-collapse: collapse;
		border-spacing: 1px;
		text-align: left;
	}

	.release_table .table_component caption {
		caption-side: top;
		text-align: left;
	}

	.release_table .table_component .divider {
		caption-side: top;
		text-align: left;
	}

	.release_table .table_component th {
		padding: 10px 0;
		font-weight: normal;
	}


	.release_table .table_component tr {
		border-bottom: 0.5px solid #dddddd;
	}


	.release_table .table_component td {
		padding: 10px 0;
	}

	.release_table .table_component td .status {
		display: flex;
		align-items: center;
		gap: 15px;
	}

	.release_table .table_component td .status .indicator {
		width: 5px;
		height: 5px;
		background-color: rgb(0, 0, 0);
		border-radius: 100%;
	}

	.release_table .table_component tr[data-status='onHold'] .status .indicator {
		background-color: rgb(107, 99, 20);
	}

	.release_table .table_component tr[data-status='available'] .status .indicator {
		background-color: rgb(45, 107, 20);
	}


	.release_table .table_contact {
		display: flex;
		margin-top: 50px;
	}

	.release_table .table_contact .left {
		display: flex;
		flex: 1;
	}

	.release_table .table_contact .right {
		display: flex;
		flex: 1;
		justify-content: space-around;
		gap: 20px;
	}

	.release_table .table_contact .right a {
		text-decoration: none;
	}

	.release_table .table_contact .right > div {
		display: flex;
		flex-direction: column;
		gap: 5px;
	}

	.release_table .table_contact .right .name {
		margin: 0 0 4px 0;
		font-size: 1.2em;
		font-weight: 500;
		line-height: 110%;
		color: var(--dark-gold);
	}

	.release_table .table_contact .right .primary {
		font-weight: 900;
	}

	/* Mobile Styles */

	@media (max-width: 1278px) {
		.table_component.house {
			display: none;
		}

		.mobile-accordion.house {
			display: block;
		}

		.accordion-header .status {
			display: flex;
			align-items: center;
			gap: 8px;
		}

		/* Accordion base styles */
		.accordion-item {
			border: 1px solid;
			margin-bottom: 10px;
			overflow: hidden;
			transition: border 0.3s ease-in-out;
		}

		/* Header Button */
		.accordion-header {
			width: 100%;
			display: flex;
			justify-content: space-between;
			align-items: center;
			padding: 20px;
			background: #fff;
			border: none;
			cursor: pointer;
			font-size: 16px;
			font-weight: 500;
			transition: background 0.3s ease-in-out;
			color: var(--dark-blue);
		}

		/* Expand/Collapse Animation */
		.accordion-content {
			max-height: 0;
			overflow: hidden;
			transition: max-height 0.3s ease-in-out, padding 0.3s ease-in-out;
			background: #fff;
			padding: 0 15px;
		}

		/* When open, ensure it has padding */
		.accordion-item.open .accordion-content {
			padding: 20px 0 30px 20px;
		}

	
		.release_table {
			margin: 50px 0;
		}

		.release_table .table_contact {
			margin-top: 20px;
			flex-direction: column;
			gap: 20px;
		}

		.release_table .table_contact .right {
			flex-direction: column;
			gap: 20px;
		}
	}


	@media (max-width: 768px) {
		.table_component {
			display: none;
		}
		
		.mobile-accordion {
			display: block;
		}


	
	}


	/* ---------------- lifestyle ---------------- */

	.stjames_lifestyle_feature {
		position:relative;
	}

	.stjames_lifestyle_feature .top_spacer {
		height:32px;
	}

	.stjames_lifestyle_feature .feature_main {
		position:relative;
	}

	.stjames_lifestyle_feature .bg {
		position:absolute;
		z-index:10;
		top:0;
		right:0;
		bottom:0;
		left:0;
	}

	.stjames_lifestyle_feature .bg .box {
		position:absolute;
		z-index:30;
		top:0;
		bottom:0;
		background-color:#eee;
	}

	.stjames_lifestyle_feature .bg .box .img {
		width:100%;
		height:100%;
		object-fit:cover;
	}

	.stjames_lifestyle_feature .bg .box_1 {
		top:10%;
		bottom:10%;
		left:0;
		width:15%;
	}

	.stjames_lifestyle_feature .bg .box_2 {
		top:5%;
		right:50%;
		width:35%;
		transform:translateY(-32px);
	}

	.stjames_lifestyle_feature .scrolled .bg .box_2 {
		transform:translateY(0);
	}

	.stjames_lifestyle_feature .bg .box_3 {
		bottom:5%;
		left:50%;
		width:35%;
	}

	.stjames_lifestyle_feature .bg .box_4 {
		top:10%;
		bottom:10%;
		right:0;
		width:15%;
		transform:translateY(-32px);
	}
	
	.stjames_lifestyle_feature .scrolled .bg .box_4 {
		transform:translateY(0);
	}

	.stjames_lifestyle_feature .fg {
		position:relative;
		z-index:20;
		padding:64px 0;
	}

	.stjames_lifestyle_feature .fg .box {
		box-sizing:border-box;
		width:90%;
		max-width:480px;
		margin:0 auto;
		background-color:var(--dark-blue);
		padding:8px;
		color:#fff;
		text-align:center;
	}

	.stjames_lifestyle_feature .fg .box .border {
		border:2px solid var(--dark-gold);
		padding:32px 24px;
	}

	.stjames_lifestyle_feature .fg .box .text {

	}

	.stjames_lifestyle_feature .fg .box .headline_label {
		font-size:1em;
		line-height:110%;
		font-weight:500;
		text-transform:uppercase;
		letter-spacing:0.1em;
		color:var(--dark-gold);
		margin:0 0 12px 0;
	}

	.stjames_lifestyle_feature .fg .box .headline {
		font-size:1.8em;
		line-height:110%;
		font-weight:500;
		text-transform:uppercase;
		letter-spacing:0.1em;
		margin:0;
	}

	.stjames_lifestyle_feature .fg .box .subline {
		font-size:1em;
		line-height:110%;
		font-weight:500;
		margin:12px 0 0 0;
	}

	.stjames_lifestyle_main {
		position:relative;
		padding:48px 0;
	}

	.stjames_lifestyle_main .row_content {
		display:flex;
		flex-direction:column;
		margin:0 0 48px 0;
	}

	.stjames_lifestyle_main .row_content .col_image {
		display:flex;
		margin:0 0 32px 0;
	}

	.stjames_lifestyle_main .row_content .col_image .box {

	}

	.stjames_lifestyle_main .row_content .col_image .box .img {
		width:100%;
		height:100%;
		object-fit:cover;
	}

	.stjames_lifestyle_main .row_content .col_text {
		box-sizing:border-box;
		width:80%;
		margin:0 auto;
	}

	.stjames_lifestyle_main .row_content .col_text .headline {
		font-size:1.6em;
		line-height:110%;
		font-weight:500;
		text-transform:uppercase;
		letter-spacing:0.2em;
	}

	.stjames_lifestyle_main .row_content .col_text .text {
		font-size:1em;
		line-height:140%;
	}

	.stjames_lifestyle_main .row_1 .col_image {
		padding:0 0 0 10%;
		height:192px;
	}

	.stjames_lifestyle_main .row_2 .col_image {
		padding:0 10% 0 0;
		height:128px;
	}

	.stjames_lifestyle_main .row_2 .col_image .box_2 {
		flex:1 1 40%;
		margin:0 8px 0 0;
	}

	.stjames_lifestyle_main .row_2 .col_image .box_3 {
		flex:1 1 60%;
	}

	.stjames_lifestyle_main .row_items {
		display:flex;
		flex-direction:column;
		width:80%;
		margin:0 auto;
		max-width:1280px;
		text-align:center;
	}

	.stjames_lifestyle_main .row_items .item {
		font-size:1em;
		line-height:140%;
		font-weight:500;
		color:var(--dark-gold);
		padding:16px 0;
		border-bottom:1px solid var(--dark-gold);
	}

	.stjames_lifestyle_main .row_items .item:last-child {
		border:none;
	}

	/* ---------------- land for sale ---------------- */

	body[data-section-id='10'][data-type-id='23'] .panel_page_feature,
	body[data-section-id='5'][data-type-id='5'] .panel_page_feature {
		text-align:center;
	}

	body[data-section-id='10'][data-type-id='23'] .panel_page_feature .page_headline,
	body[data-section-id='5'][data-type-id='5'] .panel_page_feature .page_headline {
		letter-spacing:0.15em;
	}

	body[data-section-id='10'][data-type-id='23'] .dev_layout_downloads,
	body[data-section-id='5'][data-type-id='5'] .dev_layout_downloads {
		
	}

	.breadcrumb {
		text-align:center;
	}

	.land_map_panel {
		background-color:var(--warm-grey-2);
	}

	.land_map_panel .sidebar_item {
		background:transparent;
		border:1px solid var(--dark-blue);
	}

	.land_map_panel .sidebar_item .button {
		background-color:var(--dark-blue);
		color:#fff;
	}

	.map_key .swatch {
		border-color:var(--dark-blue);
	}

	.map_key .swatch.blank {
		background-color:#f7f6f2;
		border-color:var(--dark-blue);
	}

	.map_key .swatch.available {
		background-color:#b3ce87;
		border-color:var(--dark-blue);
	}

	.map_key .swatch.hold {
		background-color:#e5e1aa;
		border-color:var(--dark-blue);
	}

	.map_key .swatch.sold {
		background-color:b57459;
		border-color:var(--dark-blue);
	}

	.land_map_panel .sidebar_actions .action_item {
		background:transparent;
		border:1px solid var(--dark-blue);
		border-radius:0;
	}

	.land_map svg a.stage.under,
	.land_map svg a.lot.under {
		fill:rgba(111,166,29,0.5);
		stroke:var(--dark-blue);
		stroke-width:4px;
	}

	.land_map svg a.stage.under[data-status="onHold"],
	.land_map svg a.lot.under[data-status="onHold"] {
		fill:rgba(212,206,100,0.5);
	}

	.land_map svg a.stage.under[data-remaining-lots="0"] {
		fill:rgba(181,116,89,0.5);
		stroke:rgba(181,116,89,0.75);
	}

	.allotment_table th {
		background-color:var(--dark-blue);
	}

	.allotment_table td {
		color:var(--dark-blue);
	}
  
	.allotment_table td.lotnum a{
    pointer-events: none;
  }

	.allotment_table tr[data-status="available"] .status {
		color:rgba(111,166,29,1);
	}

	.allotment_table tr[data-status="available"] .dot {
		background-color:rgba(111,166,29,1);
	}

	.allotment_table tr[data-status="onHold"] .status {
		color:rgb(183, 174, 21);
	}

	.allotment_table tr[data-status="onHold"] .dot {
		background-color:rgba(212,206,100,1);
	}

	.allotment_table tr .action .button {
		color:var(--dark-blue);
	}

	#lot_listing_tooltip.stjames_lot_listing_tooltip {
		text-align:center;
		padding:8px;
	}

	#lot_listing_tooltip.stjames_lot_listing_tooltip .image {
		position:relative;
		height:192px;
	}

	#lot_listing_tooltip.stjames_lot_listing_tooltip .image .img {
		position:relative;
		z-index:10;
		width:100%;
		height:100%;
		object-fit:cover;
	}

	#lot_listing_tooltip.stjames_lot_listing_tooltip .image .status {
		position:absolute;
		z-index:20;
		top:0;
		right:0;
		display:none;
		padding:8px 12px;
		color:var(--dark-blue);
		background-color:#fff;
		line-height:110%;
	}

	#lot_listing_tooltip.stjames_lot_listing_tooltip .image .status[data-status='onHold'] {
		display:flex;
		align-items:center;
		background-color:#e9e6b1;
		color:var(--dark-blue);
	}

	#lot_listing_tooltip.stjames_lot_listing_tooltip .image .status[data-status='onHold']:before {
		width:6px;
		height:6px;
		background-color:var(--dark-blue);
		margin-right:8px;
	}

	#lot_listing_tooltip.stjames_lot_listing_tooltip .lot_width {
		font-size:1em;
		line-height:110%;
		margin:8px 0;
	}

	#lot_listing_tooltip.stjames_lot_listing_tooltip .rooms {
		display:flex;
		align-items:center;
	}

	#lot_listing_tooltip.stjames_lot_listing_tooltip .rooms .room {
		display:flex;
		align-items:center;
		margin:0 16px 0 0;
	}

	#lot_listing_tooltip.stjames_lot_listing_tooltip .rooms .room .icon {
		width:16px;
		height:auto;
		margin:0 8px 0 0;
	}

	#lot_listing_tooltip.stjames_lot_listing_tooltip .action {
		padding:12px;
		background-color:var(--warm-grey-2);
	}

	/* ---------------- location ---------------- */

	body[data-entry-id='194125'] #land_site_header .header_bar {
		background-color:var(--dark-green);
	}

	.stjames_location .intro {
		margin:0 auto 32px auto;
		max-width:512px;
	}

	.stjames_location .intro .headline_label {
		font-size:1em;
		line-height:110%;
		font-weight:500;
		text-transform:uppercase;
		letter-spacing:0.1em;
		color:var(--dark-gold);
		margin:0 0 12px 0;
	}

	.stjames_location .intro .headline {
		font-size:1.8em;
		line-height:110%;
		font-weight:500;
		text-transform:uppercase;
		letter-spacing:0.1em;
		margin:0;
	}

	.stjames_location .intro .subline {
		font-size:1em;
		line-height:130%;
		font-weight:500;
		margin:12px 0 0 0;
	}

	/* ---------------- contact ---------------- */

	.stjames_contact {

	}

	.stjames_contact .contact_panel {
		background-color:var(--warm-grey-1);
	}

	.stjames_contact .panel_fairland {
		border-top:1px solid #ccc;
	}

	.stjames_contact .panel_headline {
		margin:0 0 16px 0;
	}

	.stjames_contact .panel_headline .headline {
		font-weight:500;
		text-transform:uppercase;
		font-size:1.6em;
	}

	.stjames_contact .companies {
		display:flex;
		flex-direction:column;
		margin:-8px 0;
	}

	.stjames_contact .companies .company {
		display:flex;
		flex-direction:column;
		background-color:transparent;
		margin:16px 0;
	}

	.stjames_contact .companies .company .company_headline {
		margin:0 0 12px 0;
	}

	.stjames_contact .companies .company .company_headline .headline {
		display:flex;
		align-items:flex-end;
		font-size:1.2em;
		text-transform:uppercase;
		height:64px;
	}

	.stjames_contact .companies .company .company_headline .headline .logo {
		width:auto;
		height:auto;
		max-width:128px;
		max-height:64px;
		filter:grayscale(1) brightness(0.5) sepia(1) hue-rotate(180deg);
	}

	.stjames_contact .contact_list {
		display:flex;
		flex-direction:column;
		margin:-8px 0;
	}

	.stjames_contact .contact_list .contact_item {
		display:flex;
		flex-direction:column;
		overflow:hidden;
		background-color:#fff;
		padding:16px;
		margin:8px 0;
	}

	.stjames_contact .contact_list .contact_item .image {
		flex-basis:32px;
		margin:0 0 16px 0;
	}

	.stjames_contact .contact_list .contact_item .image .circle {
		width:32px;
		height:32px;
		background-color:var(--warm-grey-2);
	}

	.stjames_contact .contact_list .contact_item .image img {
		width:100%;
		height:100%;
		max-width:none;
		max-height:none;
		object-fit:cover;
	}

	.stjames_contact .contact_list .contact_item .text .name {
		font-size:1.2em;
	}

	.contact_list .contact_item .text ul li {
		text-overflow:ellipsis;
		letter-spacing:0;
	}

	.contact_list .contact_item .text ul li a {
		line-height:110%;
		padding:4px 0;
	}

	.dev_layout_contact {
		
	}

	.dev_layout_contact .col_right {
		display:none;
	}

	/* ---------------- news ---------------- */

	.news_panel, 
	.panel_news_list {
		background-color:#fff;
	}

	.news_list .news_item .text .headline {
		font-size:1.2em;
	}

	.news_article {
		background-color:#fff;
	}

	@media only screen and (min-width: 768px) {
		.news_article {
			margin-top: 0;
		}

	}

	.news_article .panel_maxwidth {
		max-width: 1200px;
	}


	.news_article h1 {
		font-size:2.2em;
		line-height:110%;
		font-family: 'BeausiteGrand', sans-serif;
	}

	.news_article .article_date {
		margin:0 0 8px 0;
	}

	.news_article .sidebar_box {
		border:1px solid #ccc;
		background-color:transparent;
	}

	.news_article .sidebar_box .button {
		background-color:var(--dark-blue);
		color:#fff;
	}

	/* ---------------- stage 1 eoi form ---------------- */

	body[data-entry-id='195528'] .panel_page_feature .page_headline {
		font-size:1.4em;
		line-height:120%;
	}

	body[data-entry-id='195528'] .panel_page_feature .page_subline {
		color:var(--dark-gold);
		font-size:1em;
	}

	body[data-entry-id='195528'] #land_site_header .header_bar .nav_open {
		display:none;
		visibility:hidden;
		opacity:0;
		pointer-events:none;
	}

	/* ---------------- masterplan page ---------------- */

	.stjames_masterplan {
		background-color:var(--warm-grey-1);
	}

	.stjames_masterplan .panel_banner .img_banner {
		display:block;
		width:100%;
		height:auto;
	}

	.stjames_masterplan .panel_masterplan {

	}

	.stjames_masterplan .panel_masterplan .panel_maxwidth {
		display:flex;
		justify-content:center;
		align-items:center;
		max-width:1024px;
	}

	.stjames_masterplan .panel_masterplan .masterplan {
		border:1px solid var(--dark-blue);
	}

	.stjames_masterplan .panel_masterplan .img_masterplan {
		width:100%;
		height:100%;
		object-fit:contain;
		vertical-align:top;
		margin-top:-32px;
	}

	.stjames_masterplan .panel_precincts {

	}

	.stjames_masterplan .panel_precincts .panel_maxwidth {
		max-width:1024px;
	}

	.stjames_masterplan .panel_precincts .panel_top {
		margin:0 0 16px 0;
	}

	.stjames_masterplan .panel_precincts .panel_top .headline {
		margin:0 0 8px 0;
		font-weight:500;
		line-height:110%;
		text-transform:uppercase;
		letter-spacing:0.2em;
	}

	.stjames_masterplan .panel_precincts .panel_top .subline {
		font-size:1em;
		line-height:130%;
	}

	.stjames_masterplan .panel_precincts .precincts {
		display:flex;
		flex-direction:column;
		margin:-16px 0;
		padding:16px 0;
	}

	.stjames_masterplan .panel_precincts .precincts .precinct {
		margin:16px 0;
	}

	.stjames_masterplan .panel_precincts .precincts .precinct .top {
		margin:0 0 16px 0;
	}

	.stjames_masterplan .panel_precincts .precincts .precinct .headline {
		display:flex;
		align-items:center;
		margin:0 0 4px 0;
		font-size:1.4em;
		line-height:110%;
	}

	.stjames_masterplan .panel_precincts .precincts .precinct .headline .circle {
		display:flex;
		justify-content:center;
		align-items:center;
		width:16px;
		height:16px;
		margin:0 8px 0 0;
		font-size:0.6em;
		line-height:100%;
		border-radius:50%;
		background-color:var(--dark-blue);
		color:#fff;
	}

	.stjames_masterplan .panel_precincts .precincts .precinct .subline {
		margin:4px 0;
		color:var(--dark-gold);
		filter:brightness(0.8);
	}

	.stjames_masterplan .panel_precincts .panel_bot {
		margin:32px 0 0 0;
		color:var(--dark-gold);
		filter:brightness(0.8);
	}

	.stjames_masterplan .panel_precincts .panel_bot p {
		font-size:1em;
		line-height:130%;
	}

	.stage_top_banner .panel_padding {
		padding:32px 0;
	}

	.stage_top_banner .panel_maxwidth {
		max-width:768px;
	}

	.panel_with_box .bg .img {
		object-position:center 30%;
	}

}

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

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

	/* ---------------- overall ---------------- */

	/* ---------------- buttons ---------------- */

	.box_button.large {
		padding:12px 16px;
	}

	/* ---------------- header ---------------- */



	#land_site_header .nav_container .foreground {
		width:80%;
	}

	#land_site_header .nav_container .nav_items li a {
		font-size:2.5em;
		padding:12px 0;
	}



	#land_site_header .header_bar .register_button {
		padding: 10px 25px;
	}



	/* ---------------- footer ---------------- */



	#stjames_footer .panel_padding {
		padding:64px 0;
	}

	#stjames_footer .row_top {
		margin:-24px 0;
	}

	#stjames_footer .row_top .col {
		margin:24px 0;
	}

	#stjames_footer .row_top .col .name {
		font-size:1.4em;
		margin-bottom:8px;
	}

	#stjames_footer .row_top .col .phone {
		font-size:1.4em;
	}

	#stjames_footer .row_top .col .email {
		font-size:1em;
	}

	#stjames_footer .row_top .col .line {
		margin-top:24px;
	}

	#stjames_footer .row_bot {
		margin-top:48px;
	}

	#stjames_footer .row_bot .item {
		display:inline-block;
	}

	#stjames_footer .row_bot .divider {
		display:inline-block;
	}

	/* ---------------- home ---------------- */

	#stjames_home .home_feature .box {
		top:24px;
		right:24px;
		bottom:24px;
		left:24px;
		padding:32px;
	}

	#stjames_home .home_feature .box .row_logo .img {
		width:192px;
	}

	#stjames_home .home_feature .box .row_headline .headline .img {
		width:360px;
	}

	#stjames_home .home_feature .box .row_headline .subline {
		font-size:1.1em;
        max-width: 100%;
	}

	#stjames_home .home_feature .box .row_nav .item {
		font-size:1.1em;
	}

	#stjames_home .home_feature .box .row_nav .divider {
		font-size:1.1em;
	}

	#stjames_home .home_vision {
		padding:48px 0;
	}

	#stjames_home .home_vision .col_image {
		width:calc(100% - 24px);
		height:256px;
	}

	#stjames_home .home_vision .col_text {
		padding:32px;
	}

	#stjames_home .home_vision .col_text .headline {
		margin-bottom:24px;
	}

	#stjames_home .home_vision .col_text .actions {
		margin-top:24px;
	}

	#stjames_home .home_lifestyle {
		padding:24px;
	}

	#stjames_home .home_lifestyle .box {
		padding:32px;
	}

	#stjames_home .home_lifestyle .col_image {
		margin-bottom:32px;
		height:192px;
	}

	#stjames_home .home_lifestyle .col_text .headline {
		margin-bottom:24px;
	}

	#stjames_home .home_lifestyle .col_text .actions {
		margin-top:24px;
	}

	#stjames_home .home_announcements {
		
	}

	#stjames_home .home_announcements .items .item .image {
		height:320px;
	}

	#stjames_home .home_announcements .items .item .content {
		padding:24px;
	}

	#stjames_home .home_announcements .items .item .headline {
		font-size:1.3em;
	}

	#stjames_home .home_faq .panel_padding {
		padding:64px 0;
	}

	#stjames_home .home_faq .row_headline {
		width:80%;
		margin-bottom:48px;
	}

	#stjames_home .home_faq .row_headline .headline {
		margin-bottom:24px;
	}

	#stjames_home .home_faq .row_headline .line {
		margin-top:32px;
	}

	#stjames_home .home_faq .item .question {
		padding:24px 32px 24px 0;
	}

	#stjames_home .home_faq .item .question .icon {
		flex-basis:48px;
	}

	#stjames_home .home_faq .item .answer {
		padding:0 24px 32px 48px;
	}

	#stjames_home .home_faq .row_disclaimer {
		margin-top:32px;
	}

	.panel_location_map {
		padding:24px;
	}

	.panel_location_map .box {
		padding:32px;
	}

	.panel_location_map .col_map {
		margin-bottom:32px;
	}

	.panel_location_map .legend .legend_group {
		margin:24px 0;
	}

	.panel_location_map .legend .legend_headline {
		margin-bottom:12px;
	}

	.panel_location_map .legend .legend_item {
		margin:12px 0;
	}

	.panel_location_map .legend .legend_item .circle {
		flex-basis:20px;
		width:20px;
		height:20px;
		margin-top:0;
	}

	.panel_location_map .actions {
		margin-top:32px;
	}

	.panel_with_box {
		
	}

	.panel_with_box .panel_padding {
		padding:64px 0;
	}

	.panel_with_box .box {
		padding:16px;
	}

	.panel_with_box .box .inner {
		padding:48px 32px;
	}

	/* ---- home v2 ---- */

	body[data-entry-id='194650'] #land_site_header .header_bar {
		padding:48px;
	}

	#stjames_home .home_feature .box .row_headline .actions {
		margin-top:24px;
	}

	/* ---------------- house and land ---------------- */

	.stjames_houseland_feature {
		min-height:320px;
	}

	.stjames_houseland_feature .bg {
		top:12px;
		right:12px;
		bottom:12px;
		left:12px;
	}

	.stjames_houseland_feature .inner {
		padding:64px 48px;
	}

	.stjames_houseland_filter_bar {
		padding:32px;
	}

	.stjames_houseland_filter_bar .cols {
		margin:-12px 0;
	}

	.stjames_houseland_filter_bar .cols .col {
		margin:12px 0;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing {
		padding:12px;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_image .image {
		height:256px;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text .row_top {
		padding:32px 16px;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text .design_name {
		font-size:1.6em;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text .address {
		font-size:1em;
		margin-top:6px;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text .price {
		font-size:1em;
		line-height:110%;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text .rooms .room {
		font-size:1.2em;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text .row_bot {
		padding:24px 0;
	}

	/* ---------------- house and land detail ---------------- */

	#listing_detail_2023 {

	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary {
		padding:64px 48px;
	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary:before {
		top:16px;
		right:16px;
		bottom:16px;
		left:16px;
	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary .col_image {
		margin-bottom:16px;
	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson .actions {
		margin-top:16px;
	}

	/* ---------------- lifestyle ---------------- */

	.stjames_lifestyle_feature {
		
	}

	.stjames_lifestyle_feature .top_spacer {
		height:64px;
	}

	.stjames_lifestyle_feature .fg {
		padding:128px 0;
	}

	.stjames_lifestyle_feature .fg .box {
		padding:12px;
	}

	.stjames_lifestyle_feature .fg .box .border {
		padding:64px 32px;
	}

	.stjames_lifestyle_feature .fg .box .headline_label {
		margin-bottom:16px;
		font-size:1.1em;
	}

	.stjames_lifestyle_feature .fg .box .headline {
		font-size:2em;
	}

	.stjames_lifestyle_feature .fg .box .subline {
		margin-top:16px;
	}

	.stjames_lifestyle_main {
		padding:96px 0;
	}

	.stjames_lifestyle_main .row_content {
		margin-bottom:64px;
	}

	.stjames_lifestyle_main .row_content .col_image {
		margin-bottom:48px;
	}

	.stjames_lifestyle_main .row_1 .col_image {
		height:256px;
	}

	.stjames_lifestyle_main .row_2 .col_image {
		height:160px;
	}

	.stjames_lifestyle_main .row_2 .col_image .box_2 {
		margin-right:12px;
	}

	/* ---------------- location ---------------- */

	.stjames_location .intro {
		margin-bottom:48px;
	}

	.stjames_location .intro .headline_label {
		margin-bottom:16px;
		font-size:1.1em;
	}

	.stjames_location .intro .headline {
		font-size:2em;
	}

	.stjames_location .intro .subline {
		margin-top:16px;
	}

	/* ---------------- contact ---------------- */

	.stjames_contact {

	}

	.stjames_contact .companies .company {
		
	}

	.stjames_contact .companies .company .company_headline {
		margin-bottom:16px;
	}

	.stjames_contact .contact_list .contact_item {
		flex-direction:row;
		align-items:flex-start;
		padding:24px;
	}

	.stjames_contact .contact_list .contact_item .image {
		margin:0 16px 0 0;
	}

	.dev_layout_contact {
		
	}

	/* ---------------- stage 1 eoi form ---------------- */

	body[data-entry-id='195528'] .panel_page_feature .page_headline {
		font-size:1.6em;
	}

	body[data-entry-id='195528'] .panel_page_feature .page_subline {
		font-size:1.1m;
	}

	/* ---------------- masterplan page ---------------- */

	.stjames_masterplan .panel_masterplan .img_masterplan {
		margin-top:-48px;
	}

	.stjames_masterplan .panel_precincts .precincts {
		margin:-24px 0;
		padding:24px 0;
	}

	.stjames_masterplan .panel_precincts .precincts .precinct {
		margin:24px 0;
	}

	.stage_top_banner .panel_padding {
		padding:48px 0;
	}

}

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

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

	/* ---------------- overall ---------------- */

	/* ---------------- buttons ---------------- */

	.line_button {
		font-size:1.1em;
	}

	.box_button.large {
		padding:16px 24px;
		font-size:1.1em;
	}

	/* ---------------- header ---------------- */

	#land_site_header .nav_container .foreground {
		width:70%;
		background-color:transparent;
	}

	body[data-page-id='page-237602'] #land_site_header .nav-menu-items > div {
		padding: 250px 5% 0;
		max-height: calc(100vh - 250px);
		overflow-y: auto;
	}

	#land_site_header .nav-menu-items > div{
		padding: 100px 5% 0;
		max-height: calc(100vh - 250px);
		overflow-y: auto;
	}



	#land_site_header .nav-menu-items ul li a{
		font-size: 50px;
		padding: 20px 10px;
	}



	/* ---------------- footer ---------------- */

	#stjames_footer .panel_padding {
		padding:96px 0;
	}

	#stjames_footer .row_top {
		flex-direction:row;
		justify-content:center;

		margin:0 -32px;
	}

	#stjames_footer .row_top .col {
		margin:0 32px;
	}

	#stjames_footer .row_top .col .line {
		
	}

	#stjames_footer .row_top .col .logo {
		margin-bottom:24px;
	}

	#stjames_footer .row_bot {
		margin-top:64px;
	}

	/* ---------------- home ---------------- */

	#stjames_home .home_feature .box {
		padding:64px;
	}

	#stjames_home .home_feature .box .row_logo .img {
		width:256px;
    margin-top: 0;
	}

	#stjames_home .home_feature .box .row_headline .headline .img {
		width:512px;
	}

	#stjames_home .home_feature .box .row_headline .headline .mobile-show{
		display: none;
	}

	#stjames_home .home_feature .box .row_headline .subline {
		margin-top:24px;
		font-size:1.2em;
	}

	.video-button > div > img {
		width: 30px; 
		margin-right: 15px;
	}

	.video-button > div > span {
		color:#fff; 
		font-size:22px;
	}

	#stjames_home .home_feature .box .row_nav .item {
		padding:0 8px;
	}

	#stjames_home .home_feature .box .row_nav .divider {
		margin:0 4px;
	}

	#stjames_home .home_vision .cols {
		flex-direction:row;
		align-items:center;
	}

	#stjames_home .home_vision .col_image {
		width:100%;
		height:320px;
	}

	#stjames_home .home_vision .col_text {
		flex:0 0 60%;
		padding:48px;
	}

	#stjames_home .home_lifestyle .box {
		padding:48px;
	}

	#stjames_home .home_lifestyle .cols {
		flex-direction:row-reverse;
		align-items:center;
	}

	#stjames_home .home_lifestyle .col_text {
		flex:0 0 55%;
		margin-right:64px;
	}

	#stjames_home .home_lifestyle .col_image {
		margin:0;
		height:256px;
	}

	#stjames_home .home_announcements {
		
	}

	#stjames_home .home_announcements .items {
		flex-direction:row;
		margin:0 -8px;
	}

	#stjames_home .home_announcements .items .item {
		flex:0 1 calc(33.333% - 16px);
		margin:0 8px;
		overflow:hidden;
	}

	#stjames_home .home_announcements .items .item .image {
		height:192px;
	}

	#stjames_home .home_faq .panel_padding {
		padding:96px 0;
	}

	#stjames_home .home_faq .row_headline {
		width:70%;
		margin-bottom:64px;
		text-align:center;
	}

	#stjames_home .home_faq .row_headline .line {
		margin-top:48px;
		margin-left:auto;
		margin-right:auto;
		width:160px;
	}

	#stjames_home .home_faq .item .question {
		padding:32px 64px 32px 0;
		font-size:1.2em;
	}

	#stjames_home .home_faq .item .question .icon {
		flex-basis:64px;
	}

	#stjames_home .home_faq .item .answer {
		padding:0 64px 48px 64px;
		font-size:1.1em;
	}

	#stjames_home .home_faq .row_disclaimer {
		margin-top:48px;
	}

	.panel_location_map {
		
	}

	.panel_location_map .box {
		padding:48px;
	}

	.panel_location_map .col_map .map .img.img_full {
		display:block;
	}

	.panel_location_map .col_map .map .img.img_simple {
		display:none;
	}

	.panel_location_map .legend {
		display:block;
		columns:2;
	}

	.panel_location_map .legend .legend_group {
		display:inline-block;
		width:100%;
		margin:16px 0;
	}

	.panel_location_map .legend .legend_headline {
		margin-bottom:16px;
	}

	.panel_location_map .actions .box_button.button_expand {
		display:none;
	}

	.panel_with_box {
		text-align:center;
	}

	.panel_with_box .panel_padding {
		padding:128px 0;
	}

	.panel_with_box .box {
		padding:24px;
	}

	.panel_with_box .box .inner {
		padding:128px 96px;
	}

	.panel_with_box .box .headline {
		font-size:1.8em;
	}

	.panel_with_box .box .headline br {
		display:inline;
	}

	.panel_with_box .box .row_actions {
		margin-top:48px;
	}

	/* ---- home v2 ---- */

	body[data-entry-id='194650'] #land_site_header .header_bar {
		padding:64px;
	}

	#stjames_home .home_feature .box .row_headline .actions {
		margin-top:32px;
	}

	/* ---------------- house and land ---------------- */

	.stjames_houseland_feature {
		min-height:384px;
	}

	.stjames_houseland_feature .bg {
		top:16px;
		right:16px;
		bottom:16px;
		left:16px;
	}

	.stjames_houseland_feature .inner {
		padding:160px 96px;
	}

	.stjames_houseland_feature .logo .img {
		max-width:160px;
		max-height:128px;
	}

	.stjames_houseland_feature .headline .big {
		font-size:2.4em;
	}

	.stjames_houseland_main .panel_padding {
		padding-top:0;
	}

	.stjames_houseland_filter_bar {
		margin-top:-64px;
		margin-bottom:48px;
	}

	.stjames_houseland_filter_bar .cols {
		flex-direction:row;
		margin:0 -12px;
	}

	.stjames_houseland_filter_bar .cols .col {
		flex:1 1 100%;
		margin:0 12px;
	}

	body[data-site-handle='site_stjames'] .listing_items {
		flex-direction:row;
		flex-wrap:wrap;
		margin:-8px;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing {
		margin:8px;
		flex-basis:calc(50% - 16px);
	}


	/* ---------------- lifestyle ---------------- */

	.stjames_lifestyle_feature {
		
	}

	.stjames_lifestyle_feature .fg .box {
		padding:16px;
	}

	.stjames_lifestyle_feature .fg .box .border {
		padding:96px 48px;
	}

	.stjames_lifestyle_main {
		padding:128px 0;
	}

	.stjames_lifestyle_main .row_content {
		flex-direction:row;
		justify-content:space-between;
		align-items:center;
		margin-bottom:96px;
	}

	.stjames_lifestyle_main .row_content .col_image {
		margin:0;
	}

	.stjames_lifestyle_main .row_1 {
		flex-direction:row-reverse;
	}

	.stjames_lifestyle_main .row_1 .col_image {
		width:47%;
		height:320px;
		padding:0;
	}

	.stjames_lifestyle_main .row_1 .col_text {
		width:40%;
		padding:0;
	}

	.stjames_lifestyle_main .row_2 .col_image {
		width:45%;
		height:256px;
		padding:0;
	}

	.stjames_lifestyle_main .row_2 .col_text {
		width:40%;
		padding:0;
	}

	.stjames_lifestyle_main .row_items {
		flex-direction:row;
		justify-content:center;
		width:90%;
	}

	.stjames_lifestyle_main .row_items .item {
		padding:16px;
		border:none;
		border-right:1px solid var(--dark-gold);
	}

	.stjames_lifestyle_main .row_items .item:last-child {
		border:none;
	}

	/* ---------------- location ---------------- */

	.stjames_location .intro {
		margin-bottom:64px;
		text-align:center;
	}

	/* ---------------- stage 1 eoi form ---------------- */

	body[data-entry-id='195528'] .panel_page_feature .page_headline {
		font-size:2em;
	}

	body[data-entry-id='195528'] .panel_page_feature .page_subline {
		font-size:1.2m;
	}

	/* ---------------- masterplan page ---------------- */

	.stjames_masterplan .panel_masterplan .img_masterplan {
		margin-top:-64px;
	}

	.stjames_masterplan .panel_precincts .panel_top {
		text-align:center;
		width:75%;
		margin-left:auto;
		margin-right:auto;
		margin-bottom:32px;
	}

	.stjames_masterplan .panel_precincts .panel_top .headline {
		font-size:2.2em;
	}

	.stjames_masterplan .panel_precincts .panel_top .subline {
		font-size:1.1em;
	}

	.stjames_masterplan .panel_precincts .precincts {
		flex-direction:row;
		flex-wrap:wrap;
		margin:-24px;
		padding:32px 0;
	}

	.stjames_masterplan .panel_precincts .precincts .precinct {
		flex:0 0 calc(50% - 48px);
		margin:24px;
	}

	.stjames_masterplan .panel_precincts .panel_bot {
		width:75%;
		margin-left:auto;
		margin-right:auto;
		margin-top:32px;
		text-align:center;
	}

	.stjames_masterplan .panel_precincts .panel_bot p {
		font-size:1.1em;
	}

	.stage_top_banner .panel_padding {
		padding:64px 0;
	}

}

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

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

	/* ---------------- overall ---------------- */

	/* ---------------- buttons ---------------- */

	/* ---------------- header ---------------- */

	#land_site_header {
		
	}

	#land_site_header .nav_container .foreground {
		width:40%;
	}

	/* ---------------- footer ---------------- */



	#stjames_footer .row_top .col {
		margin:0 48px;
	}

	/* ---------------- home ---------------- */

	#stjames_home .home_feature .box {
		top:32px;
		right:32px;
		bottom:32px;
		left:32px;
		padding:64px;
	}

	#stjames_home .home_feature {

	}

	#stjames_home .home_feature .box .row_headline .headline .img {
		width:640px;
	}

	#stjames_home .home_vision {
		padding:64px 0;
	}

	#stjames_home .home_vision .col_image {
		height:480px;
	}

	#stjames_home .home_vision .col_text {
		flex:0 0 50%;
		padding:64px;
	}

	#stjames_home .home_lifestyle {
		padding:32px;
	}

	#stjames_home .home_lifestyle .box {
		padding:64px;
	}

	#stjames_home .home_lifestyle .col_text {
		flex:0 0 50%;
		margin-right:96px;
	}

	#stjames_home .home_lifestyle .col_image {
		height:384px;
	}

	#stjames_home .home_announcements {
		
	}

	#stjames_home .home_announcements .items .item .image {
		height:256px;
	}

	#stjames_home .home_faq .panel_padding {
		padding:128px 0;
	}

	#stjames_home .home_faq .row_headline .headline {
		font-size:1.8em;
	}

	#stjames_home .home_faq .row_headline .excerpt {
		font-size:1.1em;
	}

	.panel_location_map {
		padding:32px;
	}

	.panel_location_map .box {
		padding:64px;
	}

	.panel_with_box {
		
	}

	.panel_with_box .panel_padding {
		padding:160px 0;
	}

	.panel_with_box .box .inner {
		padding:128px;
	}

	/* ---------------- house and land ---------------- */

	.stjames_houseland_feature {
		min-height:480px;
	}

	.stjames_houseland_feature .bg {
		top:24px;
		right:24px;
		bottom:24px;
		left:24px;
	}

	.stjames_houseland_feature .headline .big {
		font-size:2.6em;
	}

	.stjames_houseland_feature .headline .small {
		font-size:1.4em;
	}

	.stjames_houseland_filter_bar {
		padding:48px;
		margin-top:-80px;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_image .image {
		height:360px;
	}

	/* ---------------- house and land detail ---------------- */

	#listing_detail_2023 {

	}

	/* ---------------- lifestyle ---------------- */

	.stjames_lifestyle_feature {
		
	}

	.stjames_lifestyle_main {
		padding:160px 0;
	}

	.stjames_lifestyle_main .row_content {
		margin-bottom:128px;
	}

	.stjames_lifestyle_main .row_items .item {
		padding:24px 32px;
	}

	.stjames_lifestyle_main .row_1 .col_image {
		height:384px;
	}

	.stjames_lifestyle_main .row_2 .col_image {
		height:320px;
	}

	/* ---------------- location ---------------- */

	.stjames_location .intro {
		
	}

	.stjames_location .intro .headline_label {
		
	}

	.stjames_location .intro .headline {
		
	}

	.stjames_location .intro .subline {
		
	}

	/* ---------------- contact ---------------- */

	.stjames_contact {

	}

	.dev_layout_contact {
		
	}

	.dev_layout_contact .col_left {
		flex:1 1 auto;
	}

	.dev_layout_contact .col_left .contact_list {
		flex-direction:row;
		width:100%;
	}

	.dev_layout_contact .col_left .contact_list .contact_item {
		flex:0 0 50%;
	}

	/* ---------------- masterplan page ---------------- */

	.stjames_masterplan .panel_precincts .precincts {
		flex-direction:row;
		flex-wrap:wrap;
		margin:-32px;
	}

	.stjames_masterplan .panel_precincts .precincts .precinct {
		flex:0 0 calc(50% - 64px);
		margin:32px;
	}

}

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

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

	/* ---------------- overall ---------------- */

	/* ---------------- buttons ---------------- */

	.line_button {
		
	}

	.line_button:hover:before {
		animation-name:line-button-hover;
		animation-duration:2s;
		animation-iteration-count:infinite;
	}

	.box_button {
		padding:12px 16px;
	}

	.box_button:hover:before {
		opacity:0.1;
	}

	.box_button:hover:active {
		transform:scale(0.98);
	}

	.box_button:active:before {
		opacity:0.05;
	}

	.standard_button:hover {
		background-color:var(--dark-blue);
		filter:brightness(1.2);
	}

	/* ---------------- header ---------------- */

	#land_site_header {

	}

	#land_site_header .nav_container .foreground {
		
	}

	#land_site_header .header_bar .nav_open img,
	#land_site_header .nav_container .nav_close img {
		width:30px;
		height:auto;
	}

	#land_site_header.open .nav_container .nav_items {
		padding-bottom:32px;
	}

	#land_site_header .nav_container .nav_items li a {
		font-size:3em;
		/* padding:16px 16px 16px 48px; */
	}

	#land_site_header .nav_container .nav_items li > a:before {
		display: none;
	}

	#land_site_header .nav_container .nav_items li.active > a:before {
		display: none;
	}





	/* ---------------- footer ---------------- */


	#stjames_footer .panel_padding {
		padding:128px 0;
	}

	#stjames_footer .row_top .col {
		margin:0 64px;
	}

	#stjames_footer .row_top .col .name {
		font-size:1.6em;
		margin-bottom:12px;
	}

	#stjames_footer .row_top .col .phone {
		font-size:1.6em;
		margin:6px 0;
	}

	#stjames_footer .row_top .col .phone:hover {
		text-decoration:underline;
	}

	#stjames_footer .row_top .col .email {
		font-size:1.1em;
		margin:6px 0 0 0;
	}

	#stjames_footer .row_top .col .email:hover {
		text-decoration:underline;
	}

	#stjames_footer .row_top .col .line {
		width:128px;
		margin-top:32px;
	}

	#stjames_footer .row_top .col .logo .img {
		width:128px;
	}

	#stjames_footer .row_bot {
		margin-top:96px;
	}

	#stjames_footer .row_bot a.item:hover {
		text-decoration:underline;
	}

	/* ---------------- home ---------------- */

	#stjames_home .home_feature .box .row_logo .img {
		
	}

	#stjames_home .home_feature .box .row_headline .headline .img {
		width:768px;
	}

	#stjames_home .home_feature .box .row_headline .subline {
		margin-top:24px;
		font-size:1.4em;
	}

	#stjames_home .home_feature .box .row_nav .item {
		font-size:1.2em;
		padding:0 8px;
	}

	#stjames_home .home_feature .box .row_nav .item:hover {
		text-decoration:underline;
	}

	#stjames_home .home_feature .box .row_nav .divider {
		margin:0 8px;
	}

	#stjames_home .home_vision {
		padding:96px 0;
	}

	#stjames_home .home_vision .col_image {
		height:600px;
	}

	#stjames_home .home_vision .col_text {
		padding:96px;
	}

	#stjames_home .home_vision .col_text .headline {
		font-size:1.8em;
		margin-bottom:32px;
	}

	#stjames_home .home_vision .col_text .actions {
		margin-top:32px;
	}

	#stjames_home .home_vision .col_text .excerpt {
		font-size:1.1em;
	}

	#stjames_home .home_lifestyle .box {
		padding:128px 96px;
	}

	#stjames_home .home_lifestyle .col_text {
		margin-right:128px;
	}

	#stjames_home .home_lifestyle .col_text .headline {
		font-size:1.8em;
		margin-bottom:32px;
	}

	#stjames_home .home_lifestyle .col_text .excerpt {
		font-size:1.1em;
	}

	#stjames_home .home_lifestyle .col_text .actions {
		margin-top:32px;
	}

	#stjames_home .home_lifestyle .col_image {
		height:420px;
	}

	#stjames_home .home_announcements {
		
	}

	#stjames_home .home_announcements .items {
		margin:0 -12px;
	}

	#stjames_home .home_announcements .items .item {
		flex:0 0 calc(33.333% - 24px);
		margin:0 12px;
	}

	#stjames_home .home_announcements .items .item .image {
		height:320px;
	}

	#stjames_home .home_announcements .items .item:hover .image .overlay {
		opacity:0.1;
	}

	#stjames_home .home_announcements .items .item .content {
		padding:32px;
	}

	#stjames_home .home_faq .panel_padding {
		padding:192px 0;
	}

	#stjames_home .home_faq .row_headline {
		margin-bottom:96px;
	}

	#stjames_home .home_faq .row_headline .headline {
		font-size:2.2em;
		margin-bottom:32px;
	}

	#stjames_home .home_faq .row_headline .excerpt {
		font-size:1.2em;
	}

	#stjames_home .home_faq .row_headline .line {
		margin-top:64px;
	}

	#stjames_home .home_faq .row_disclaimer {
		margin-top:64px;
	}

	.panel_location_map .box {
		padding:128px 96px;
	}

	.panel_location_map .cols {
		flex-direction:row;
		align-items:center;
	}

	.panel_location_map .col_map {
		margin:0;
	}

	.panel_location_map .col_legend {
		flex:0 0 256px;
		margin:0 0 0 96px;
	}

	.panel_location_map .legend {
		columns:1;
	}

	.panel_with_box {
		
	}

	.panel_with_box .panel_padding {
		padding:192px 0;
	}

	/* ---- home v2 ---- */

	body[data-entry-id='194650'] #land_site_header .header_bar {
		padding:72px;
	}

	#stjames_home .home_feature .box .row_headline .actions {
		margin-top:48px;
	}

	/* ---------------- house and land ---------------- */

	.stjames_houseland_feature {
		min-height:600px;
	}

	.stjames_houseland_feature .bg {
		top:32px;
		right:32px;
		bottom:32px;
		left:32px;
	}

	.stjames_houseland_feature .logo {
		margin-bottom:48px;
	}

	.stjames_houseland_feature .logo .img {
		max-width:192px;
		max-height:160px;
	}

	.stjames_houseland_feature .headline .big {
		font-size:3em;
	}

	.stjames_houseland_feature .headline .small {
		font-size:1.6em;
	}

	.stjames_houseland_feature .excerpt {
		margin-top:48px;
		font-size:1em;
	}

	.stjames_houseland_filter_bar {
		padding:64px;
		margin-top:-96px;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing {
		flex-basis:calc(33.333% - 16px);
	}

	body[data-site-handle='site_stjames'] .listing_items .listing:active {
		transform:scale(0.99);
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_image .image {
		height:320px;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_image .image .overlay {
		transition:opacity 0.1s;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing:hover .row_image .image .overlay {
		opacity:0.1;
		transition:opacity 0s;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_image .image .status {
		opacity:0.75;
		transition:opacity 0.1s;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing:hover .row_image .image .status {
		opacity:1;
		transition:opacity 0s;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing .row_text .row_bot {
		background-color:#eee;
		opacity:0.25;
		transition:background-color 0.1s, opacity 0s;
	}

	body[data-site-handle='site_stjames'] .listing_items .listing:hover .row_text .row_bot {
		background-color:#eee;
		opacity:1;
		transition:background-color 0s, opacity 0s;
	}

	/* ---------------- house and land detail ---------------- */

	#listing_detail_2023 {

	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary {
		flex-direction:column;
	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary .col_image {
		margin:0 0 16px 0;
	}

	/* ---------------- lifestyle ---------------- */

	.stjames_lifestyle_feature {
		
	}

	.stjames_lifestyle_feature .fg .box {
		max-width:600px;
		padding:24px;
	}

	.stjames_lifestyle_feature .fg .box .headline_label {
		margin-bottom:24px;
		font-size:1.2em;
	}

	.stjames_lifestyle_feature .fg .box .headline {
		font-size:2.4em;
		letter-spacing:0.2em;
	}

	.stjames_lifestyle_feature .fg .box .subline {
		margin-top:24px;
		font-size:1.1em;
	}

	.stjames_lifestyle_main {
		padding:192px 0;
	}

	.stjames_lifestyle_main .row_content {
		margin-bottom:160px;
	}

	.stjames_lifestyle_main .row_content .col_image {

	}

	.stjames_lifestyle_main .row_content .col_text {
		
	}

	.stjames_lifestyle_main .row_content .col_text .headline {
		font-size:1.8em;
	}

	.stjames_lifestyle_main .row_content .col_text .text {
		font-size:1.1em;
	}

	.stjames_lifestyle_main .row_1 .col_image {
		height:460px;
	}

	.stjames_lifestyle_main .row_1 .col_text {
		padding:0 0 0 5%;
	}

	.stjames_lifestyle_main .row_2 .col_image {
		height:384px;
	}

	.stjames_lifestyle_main .row_2 .col_image .box_2 {
		margin-right:16px;
	}

	.stjames_lifestyle_main .row_2 .col_text {
		padding:0 5% 0 0;
	}

	.stjames_lifestyle_main .row_items .item {
		padding:24px 48px;
		font-size:1.1em;
	}

	/* ---------------- land for sale ---------------- */

	.land_map_panel .sidebar_actions .action_item:hover {
		background-color:var(--dark-blue);
		color:#fff;
	}

	.land_map_panel .sidebar_actions .action_item:hover .icon {
		filter:invert();
	}

	.land_map_panel .sidebar_item .button:hover {
		background-color:var(--dark-blue);
		color:#fff;
		filter:brightness(1.4);
	}

	.land_map svg a.stage.over:hover,
	.land_map svg a.lot.over:hover {
		fill:rgba(111,166,29,0.3);
		stroke:var(--dark-blue);
		stroke-width:8px;
	}

	.land_map svg a.stage.over[data-status="onHold"]:hover,
	.land_map svg a.lot.over[data-status="onHold"]:hover {
		fill:rgba(212,206,100,0.3);
	}

	.land_map svg a.stage.over[data-remaining-lots="0"]:hover {
		fill:rgba(181,116,89,0.3);
		stroke:rgba(181,116,89,0.5);
		stroke-width:8px;
	}

	.allotment_table tr .action .button:hover {
		background-color:var(--dark-blue);
		border-color:var(--dark-blue);
		color:#fff;
	}

	/* ---------------- location ---------------- */

	.stjames_location .intro {
		margin-bottom:96px;
	}

	.stjames_location .intro .headline_label {
		margin-bottom:24px;
		font-size:1.2em;
	}

	.stjames_location .intro .headline {
		font-size:2.4em;
		letter-spacing:0.2em;
	}

	.stjames_location .intro .subline {
		margin-top:24px;
		font-size:1.1em;
	}

	/* ---------------- contact ---------------- */

	.stjames_contact {

	}

	.stjames_contact .companies {
		flex-direction:row;
		margin:0 -16px;
	}

	.stjames_contact .companies .company {
		width:100%;
		margin:0 16px;
	}

	.stjames_contact .companies .company .company_headline {
		margin-bottom:24px;
	}

	.stjames_contact .contact_list .contact_item .image {
		flex-basis:48px;
	}

	.stjames_contact .contact_list .contact_item .image .circle {
		width:48px;
		height:48px;
	}

	/*

	#contact.dev_layout_contact .col_left {
		flex:1 1 100%;
	}

	#contact.dev_layout_contact .col_right {
		display:none;
	}

	#contact.dev_layout_contact h2 {
		display:none;
	}

	#contact.dev_layout_contact .contact_list {
		flex-direction:row;
		width:100%;
	}

	#contact.dev_layout_contact .contact_list .contact_item {
		width:100%;
	}

	*/

	.dev_layout_contact {
		
	}
	
	/* ---------------- news ---------------- */

	.news_list .news_item .text .headline {
		font-size:1.4em;
	}

	.news_article .sidebar_box .button:hover {
		background-color:var(--dark-blue);
		filter:brightness(1.3);
	}

	/* ---------------- stage 1 eoi form ---------------- */

	body[data-entry-id='195528'] .panel_page_feature .page_headline {
		font-size:2em;
	}

	body[data-entry-id='195528'] .panel_page_feature .page_subline {
		font-size:1.4em;
	}

	/* ---------------- masterplan page ---------------- */

	.stjames_masterplan .panel_masterplan .img_masterplan {
		margin-top:-96px;
	}

	.stjames_masterplan .panel_masterplan .masterplan {
		
	}

	.stjames_masterplan .panel_masterplan .masterplan:hover {
		box-shadow:2px 2px 32px rgba(0,0,0,0.1);
	}

	.stjames_masterplan .panel_precincts .panel_top {
		width:50%;
		margin-bottom:48px;
	}

	.stjames_masterplan .panel_precincts .panel_top .headline {
		font-size:2.6em;
	}

	.stjames_masterplan .panel_precincts .panel_top .subline {
		font-size:1.2em;
	}

	.stjames_masterplan .panel_precincts .precincts {
		flex-direction:row;
		flex-wrap:wrap;
		margin:-32px;
		padding:48px 0;
	}

	.stjames_masterplan .panel_precincts .precincts .precinct {
		flex:0 0 calc(50% - 64px);
		margin:32px;
	}

	.stjames_masterplan .panel_precincts .panel_bot {
		width:50%;
		margin-top:48px;
	}

	.stjames_masterplan .panel_precincts .panel_bot p {
		font-size:1.2em;
	}

	.stage_top_banner .panel_padding {
		padding:96px 0;
	}

}

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

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




	#stjames_footer .panel_padding {
		padding:160px 0;
	}

	/* ---------------- home ---------------- */

	#stjames_home .home_feature .box .row_logo .img {
		
	}

	#stjames_home .home_feature .box .row_nav .item {
		font-size:1.4em;
		padding:0 8px;
	}

	#stjames_home .home_vision {
		padding:128px 0;
	}

	#stjames_home .home_vision .col_image {
		height:800px;
	}

	#stjames_home .home_vision .col_text {
		padding:128px 256px 128px 128px;
	}

	#stjames_home .home_vision .col_text .headline {
		font-size:2em;
	}

	#stjames_home .home_vision .col_text .excerpt {
		font-size:1.2em;
	}

	#stjames_home .home_lifestyle .box {
		padding:160px 128px;
	}

	#stjames_home .home_lifestyle .col_text {
		margin-right:160px;
	}


	#stjames_home .home_lifestyle .col_text .headline {
		font-size:2em;
	}

	#stjames_home .home_lifestyle .col_text .excerpt {
		font-size:1.2em;
	}

	#stjames_home .home_announcements {
		
	}

	#stjames_home .home_announcements .items {
		margin:0 -16px;
	}

	#stjames_home .home_announcements .items .item {
		flex:0 0 calc(33.333% - 32px);
		margin:0 16px;
	}

	#stjames_home .home_announcements .items .item .image {
		height:384px;
	}

	#stjames_home .home_announcements .items .item .content {
		padding:48px;
	}

	#stjames_home .home_faq .panel_padding {
		padding:256px 0;
	}

	.panel_location_map .col_legend {
		flex:0 0 600px;
	}

	.panel_location_map .legend {
		columns:2;
		column-gap:64px;
	}

	.panel_with_box {
		
	}

	.panel_with_box .panel_padding {
		padding:256px 0;
	}

	.panel_with_box .box .inner {
		padding:128px 160px;
	}

	.panel_with_box .box .headline {
		font-size:2em;
	}

	/* ---- home v2 ---- */

	body[data-entry-id='194650'] #land_site_header .header_bar {
		padding:96px;
	}

	/* ---------------- house and land ---------------- */

	.stjames_houseland_feature {
		min-height:768px;
	}

	.stjames_houseland_feature .headline .big {
		font-size:3.6em;
	}

	/* ---------------- house and land detail ---------------- */

	#listing_detail_2023 {

	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary {
		padding:96px 64px;
	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary:before {
		top:24px;
		right:24px;
		bottom:24px;
		left:24px;
	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson.primary .col_image {
		margin-bottom:24px;
	}

	#listing_detail_2023 .section_bot .grid_container .box_contact .listing_salesperson .actions {
		margin-top:24px;
	}

	/* ---------------- lifestyle ---------------- */

	.stjames_lifestyle_feature {
		
	}

	.stjames_lifestyle_feature .fg {
		padding:160px 0;
	}

	.stjames_lifestyle_feature .fg .box {
		max-width:768px;
		padding:32px;
	}

	.stjames_lifestyle_feature .fg .box .border {
		padding:128px 64px;
	}

	.stjames_lifestyle_feature .fg .box .headline_label {
		font-size:1.3em;
	}

	.stjames_lifestyle_feature .fg .box .headline {
		font-size:2.8em;
	}

	.stjames_lifestyle_main {
		padding:256px 0;
	}

	.stjames_lifestyle_main .row_content {
		margin-bottom:196px;
	}

	.stjames_lifestyle_main .row_content .col_text .headline {
		font-size:2em;
	}

	.stjames_lifestyle_main .row_content .col_text .text {
		font-size:1.2em;
	}

	.stjames_lifestyle_main .row_1 .col_image {
		height:600px;
	}

	.stjames_lifestyle_main .row_1 .col_text {
		padding-left:10%;
	}

	.stjames_lifestyle_main .row_2 .col_text {
		padding-right:10%;
	}

	.stjames_lifestyle_main .row_items .item {
		padding:32px 64px;
		font-size:1.2em;
	}

	/* ---------------- location ---------------- */

	.stjames_location .intro {
		margin-bottom:128px;
	}

	.stjames_location .intro .headline_label {
		font-size:1.3em;
	}

	.stjames_location .intro .headline {
		font-size:2.8em;
	}

	.stjames_location .intro .subline {
		
	}

	/* ---------------- contact ---------------- */

	.stjames_contact {

	}

	/* ---------------- masterplan ---------------- */

	.stjames_masterplan .panel_masterplan .img_masterplan {
		margin-top:-128px;
	}

	.stage_top_banner .panel_padding {
		padding:128px 0;
	}

}

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

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

	#stjames_home .home_lifestyle .box {
		padding:160px;
	}

	#stjames_home .home_lifestyle .col_text {
		margin-right:192px;
	}

}

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

	#stjames_home .home_lifestyle .box {
		padding:220px 192px;
	}

	#stjames_home .home_lifestyle .col_text {
		margin-right:256px;
	}

}

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


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

	#land_site_header .nav_container {
		width: 100%;
	}

}





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



@media (prefers-reduced-motion) {
	
	#stjames_home .home_feature_v2 .bg iframe.home_feature_bg_video {
		display:none!important;
	}

}

@keyframes home-fade-video-bg {
  0% { opacity: 0; }
  100% { opacity: .8; }
}

@keyframes line-button-hover {

	0% {
		left:0;
		right:0;
	}

	10% {
		left:100%;
		right:0;
	}

	20% {
		left:0;
		right:100%;
	}

	30% {
		left:0;
		right:0;
	}

	100% {
		left:0;
		right:0;
	}

}

@keyframes bounce_in {
	
	0% {
		opacity:0;
		transform:scale(0.8);
	}
	
	50% {
		opacity:1;
		transform:scale(1.1);
	}
	
	75% {
		transform:scale(0.95)
	}
	
	100% {
		transform:scale(1);
	}
	
}



/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/

	/* Klik Override Better CSS Technique */

/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/
/*-- ----------------------------------------------------------------------------------------- --*/


/* A. Header */

#land_site_header .header_bar .logo{

}

/* B. Reusable */

.backpage_header_v1{
	display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
	min-height: 200px;
	color: #fff;
	background-color: var(--dark-blue);
	width: 100%;
	overflow: hidden;
	background-attachment: unset;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url(https://stjamesliving.com.au/images/site_stjames/home/kidman_park_house.jpg);
}

.backpage_header_v1 img{
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
	object-fit: cover;
    object-position: 50% 50%;
}

.backpage_header_v1 h1{
	font-size: 25px;
	margin-top: 30px;
}

/*-- --*/
.backpage_pre_footer{
	display: flex;
	height: 250px;
	width: 100%;
	overflow: hidden;
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url(https://stjamesliving.com.au/images/site_stjames/home/kidman_park_house.jpg);
	min-height: 300px;
	justify-content: center;
}

.backpage_pre_footer.serenade{
	background-image: url(https://stjamesliving.com.au/images/site_stjamesliving/page_features/serenade-streetscape-collection.jpeg);
}

.backpage_pre_footer.oasis{
	background-image: url(https://stjamesliving.com.au/images/site_stjamesliving/page_features/St-James-Oasis-Streetscape-02.jpg);
}

.backpage_pre_footer img{
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
	object-fit: cover;
    object-position: 50% 50%;
}

@media only screen and (max-device-width: 1366px) {
	.backpage_pre_footer {
	  background-attachment: scroll;
	}

	.backpage_header_v1 {
		background-attachment: scroll;
	}
  }


/*-- --*/


@media (min-width:768px){

	#land_site_header .header_bar{
		display: flex;
		flex-wrap: wrap;
	}

	#land_site_header .header_bar a{
        /* flex: 0 0 33.33%; */
        display: inline-flex;
	}

	#land_site_header .header_bar a.logo{
        /* align-items: center;
        justify-content: center; */
	}

	#land_site_header .header_bar .logo {
		align-items: center;
	}

	#land_site_header .header_bar a.register{
		align-items: center;
		justify-content: flex-end;
		color: #fff;
		text-decoration: none;
		/* transition-duration: .2s; */
	}

	#land_site_header .header_bar a.register:hover{
		color: var(--dark-gold);
		cursor: pointer;
	}

	/**/

	.backpage_header_v1{
		min-height: 80vh;
		background-attachment: fixed;

	}

	.backpage_header_v1.reduce{
		min-height: 400px;
	}

	.backpage_header_v1 h1{
		font-size: 70px;
	}

	/* .backpage_pre_footer{
		height: 600px;
		border-radius: 0 0 50px 50px;
	} */

	/**/

	#stjames_home .home_feature .box .row_headline .headline{
		font-size: 100px;
		margin: 50px 0 0;
	}




	.backpage_pre_footer{
		min-height: 600px;
	}

	


}


/*-- 1. Page: Close To Home -----------------------------------------*/
#page-close-to-home{
	padding: 250px 0 50px;
	background: #f1f1f1;
	display: none;
}

#page-close-to-home h1{
	margin: 0;
}


/*-- 2. Page: News -----------------------------------------*/
#page-news{
	background: #053e41;
}

#page-news h1.news-page-heading{
	margin: 100px 0 30px;
	color: #fff;
	opacity: 0;
}

#page-news .panel-container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0;
	margin: 15px 0;
	background-color: #fff;
}

#page-news .panel-container .text-content {
	flex: 1;
	margin: 0;
	text-align: center;
}

#page-news .panel-container .text-content > div{
	padding: 30px 5%;
}

#page-news .panel-container .text-content h2 {
	color: #053e41;
	font-size: 2rem;
	margin: 10px 0 10px;
}

#page-news .panel-container .text-content p {
	margin: 20px 0;
	color: #053e41;

}

#page-news .panel-container .text-content .date{
	color: #c2b59a;
}

#page-news .panel-container .btn {
	display: inline-block;
	padding: 10px 20px;
	color: #23443B;
	border: 2px solid #23443B;
	text-decoration: none;
	transition: background-color 0.3s ease;
}

#page-news .panel-container .btn:hover {
	background-color: #23443B;
	color: #fff;
}

#page-news .panel-container .image-content {
	width: 100%;
    height: 250px;
	flex: none;
}

#page-news .panel-container .image-content img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}


@media (min-width: 768px) {

	#page-news .panel-container .image-content {
		aspect-ratio: 4/3;
		height: auto;
		flex: 0 0 40%;
	}	

	#page-news .panel-container .text-content {
		flex: 0 0 60%;
		padding-right: 0;
		margin-bottom: 20px;
		text-align: left;
	}

	#page-news .panel-container .text-content > div{
		padding: 20px 10%;
	}

	#page-news .carousel-container {
		flex-direction: column;
	}

	#page-news .card {
		flex-direction: column;
	}

	#page-news .panel-container .text-content p {
		width: 100%;
	}

	#page-news .panel-container .text-content {
		margin: 20px 0 0 0;
	}

}



/*-- 3. Page: Contact -----------------------------------------*/

#page-contact{
	padding: 100px 0 100px;
}

#page-contact .display-centre{
	display: flex;
	flex-wrap: wrap;
	gap: 50px;
	flex-direction: column-reverse;
}
	
#page-contact .display-centre .content-text .intro{
	margin: 0 0 30px;
}

#page-contact .display-centre .content-text .open-hours{
	margin: 0 0 30px;
}

#page-contact .display-centre .content-text .address a{
	text-decoration: none;
}

#page-contact .display-centre .content-text .consultant{
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid var(--dark-gold);
}

#page-contact .display-centre .content-text .consultant h3{
	margin: 0;
}

#page-contact .display-centre .content-text .consultant .consultant-title{
	margin: 5px 0 15px;
}

#page-contact .display-centre .content-text .consultant .phone,
#page-contact .display-centre .content-text .consultant .email{
	margin: 0;
}

#page-contact .display-centre .content-text .consultant .phone a,
#page-contact .display-centre .content-text .consultant .email a{
	text-decoration: none;
}
	


#page-contact .display-centre .content-photo img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}



@media(min-width:768px){
	/* #page-contact{
		padding: 300px 0 150px;
	} */

	#page-contact .display-centre{
		align-items: center;
		gap: 0;
		flex-direction: row;
	}
	
	#page-contact .display-centre .content-text{
		flex: 0 0 50%;
	}

	#page-contact .display-centre .content-text > div{
		max-width: 80%;
	}

	#page-contact .display-centre .content-photo{
		flex: 0 0 50%;
	}

	#page-contact .display-centre .content-photo img{
		height: 600px;
	}	


}