/*
	Theme Name: Urban Picturehouse
	Description: Custom theme for Urban Picturehouse
	Version: 1.0
	Author: Direction Forward (@direction4ward)
	Author URI: https://directionforward.com
*/

/*------------------------------------*\
    MAIN
\*------------------------------------*/

/* variables */
:root {
	--darkgreen: #11453B;
	--lightgreen: #48FFD4;
	--fadedgreen1: #88A29D;
	--fadedgreen2: #B0B0B0;
	--fadedgreen3: #75A198;
	--cream: #EFEBE7;
	--grey: #E6E7E8;
	--line: #707070;
	--black: #171717;
	--white: #FFFFFF;
	--offwhite: #F2F3F3;
	--gold: #AA805D;
	--softgold: #E2BA95;
	--textgreen: #1A6354;
	--contactgreen: #24D366;
	--softblack: #414141;
	--fader: rgba(0,0,0,0.4);
	--background: #D1D3D4;
	--transition1: 0.25s cubic-bezier(.17,.67,.66,.94)
}

/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
/* html element 62.5% font-size for REM use */
html {
	font-size:62.5%;
	overscroll-behavior: none;
}
body {
	font-family: 'ABCNormal-Normal', Helvetica, Arial, sans-serif;
	font-weight: normal;
	font-size: 17px;
	line-height: 1.5em;
	color: var(--black);
	overscroll-behavior: none;
}
body.page-template-template-portal,
body.page-template-template-demo {
	background-color: var(--textgreen);
	color: var(--white);
}




/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    zoom:1;
}
img {
	max-width:100%;
	vertical-align:bottom;
}
a {
	color: inherit;
	text-decoration:none;
}
article a {
	text-decoration: underline;
}
a:hover {

}
a:focus {
	outline:0;
}
a:hover,
a:active {
	outline:0;
}
input:focus {
	outline:0;
}

hr {
	border: none;
	background: none;
	height: 1px;
	margin: 1em auto 1em auto;
}
.footer hr {
	background-color: rgba(255, 255, 255, 0.25);
}


ol {
	margin: 0 0 1em 0;
	padding: 0 0 0 1em;
}
ol > li {
	counter-increment: item;
}
ol ol {
	list-style: none;
	padding-left: 2em;
	margin-bottom: 0;
}
ol ol > li {
	counter-increment: subitem;
}
ol ol > li::marker {
	content: counters(item, ".") "." counter(subitem) " ";
}
  



/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

/* wrapper */
.wrapper {
	max-width: 1642px;
	width: 95%;
	margin: 0 auto 0 auto;
	position: relative;
	height: 100%;
}
main .wrapper {
	/*height: auto;*/
}
body.page-template-template-portal article,
body.page-template-template-demo article {
	max-width: 1078px;
}
.wrapper > div {
	width: 100%;
	height: 100%;
}
.spacer {
	width: 100%;
	height: 120px;
}
article {
	margin: 0 auto 0 auto;
}


/* header */
.header {
	width: 100%;
	position: fixed;
	top: 0;
    left: 0;
	height: auto;
	background-color: transparent;
	z-index: 400;
	transition: background-color var(--transition1);
	padding: 1em 0 1em 0;
}
.header.noanimate {
	transition: none;
}
.header.sticky,
.header.forcesticky {
	background-color: var(--white);
}
.header.forceforms {
	background-color: var(--darkgreen);
}



/* logo */
.logo {

}
.logo svg,
.footer-logo svg {
	width: 100%;
	height: auto;
	max-width: 114px;
}
.logo svg #Picturehouse {
	fill: var(--white);
}
.logo svg #Polygon {
	fill: var(--textgreen);
}
body.page-template-template-portal .logo svg #Polygon,
body.page-template-template-demo .logo svg #Polygon,
.sticky .logo svg #Picturehouse,
.forcesticky .logo svg #Picturehouse {
	fill: var(--darkgreen);
}
.footer-logo svg .Picturehouse {
	fill: var(--white);
}
.footer-logo img {
	width: 100%;
	height: auto;
	max-width: 174px;
}
.footer-logo {
	display: flex;
	flex-wrap: wrap;
	align-content: space-between;
	row-gap: 2em;
	max-width: 200px;
}
.footer-logo > a {
	flex-basis: 100%;
}

/* nav */
.nav {

}
ul.menu {
	list-style: none;
	margin: 0;
	padding: 0;
}
.nav ul {
	display: flex;
	flex-wrap: wrap;
}
.nav li {
	margin: 0 2em 0 2em;
	padding: 0;
}
.nav li:first-of-type {
	margin-left: 0;
}
.nav li:last-of-type {
	margin-right: 0;
}
.nav a {
	padding: 0.25em 0;
	border-bottom: 1px solid transparent;
	transition: border-bottom var(--transition1);
}
.nav a:hover {
	border-bottom: 1px solid var(--white);
}
.sticky .nav a:hover {
	border-bottom: 1px solid var(--darkgreen);
}
.nav .current_page_item a {
	border-bottom: 1px solid var(--white);
}
.sticky .nav .current_page_item a {
	border-bottom: 1px solid var(--darkgreen);
}



/* sidebar */
.sidebar {

}


/* footer */
.footer {
	background-color: var(--darkgreen);
	color: var(--fadedgreen1);
	padding: 3em 0 0 0;
}
.footer-form {
	max-width: 475px;
	margin: 0 auto 0 auto;
}
.footer-holder {
	column-gap: 1em;
}
.footer-holder > div {
	margin-bottom: 3em;
}
.footer-holder > div:last-of-type {
	margin-bottom: 0;
}
.theagents {
	display: flex;
	flex-wrap: nowrap;
	align-items: end;
	column-gap: calc(3em / 2);
}
.theagents img {
	position: relative;
}
.theagents .sav {
	width: 100%;
	height: auto;
	max-width: 70px;
}
.theagents .adm {
	width: 100%;
	height: auto;
	max-width: 112px;
    left: -2px;
}


/* quick contact */
#quickcontact {
	position: fixed;
    right: 3.333%;
    bottom: 3em;
	text-align: right;
	z-index: 100;
}
#quickcontact button {
	border: none;
	background: none;
	width: 40px;
	height: 40px;
	margin: 0;
	padding: 0;
}
#quickcontact #icon-quickcontact {
	opacity: 0.5;
	transition: opacity var(--transition1);
}
#quickcontact:hover #icon-quickcontact {
	opacity: 1;
}
#quickcontact.active #icon-quickcontact {
	opacity: 1;
}
#quickcontact dialog {
	display: none;
	text-align: left;
	position: relative;
    width: 50vw;
    max-width: 300px;
	border: none;
	background-color: var(--contactgreen);
	color: var(--white);
	border-radius: 10px;
	margin: 0 0 1em 0;
	padding: 1.5em;
}
#quickcontact dialog a {
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	padding: 0 0 0.5em 0;
	margin-bottom: 0.5em;
	display: block;
	opacity: 1;
	transition: opacity var(--transition1);
}
#quickcontact dialog a:last-of-type {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
#quickcontact dialog a:hover {
	opacity: 1;
}




#forms {
	position: fixed;
	display: none;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--darkgreen);
	color: var(--white);
	border: none;
	z-index: 300;
	margin: 0;
	padding: 0;
	overflow-y: scroll;
}
#close-forms {
    position: absolute;
    font-family: system-ui;
    font-weight: 100;
    top: 50%;
    right: 0;
    color: var(--white);
    font-size: 100px;
    cursor: pointer;
    text-align: center;
    line-height: 50px;
    width: 50px;
    height: 50px;
    transform: translateY(calc(-50% - 1rem));
	display: none;
}
#close-forms:hover {

}


#niceroundel {
	position: absolute;
	top: 5vh;
	right: 5vw;
	width: 10vw;
	height: 10vw;
	max-width: 200px;
	max-height: 200px;
	border-radius: 200px;
	min-width: 125px;
    min-height: 125px;
	text-align: center;
}
#niceroundel-animation {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
}




section {
	position: relative;
	padding: 5em 0 5em 0;
}
section.empty {
	padding: 0;
}
.overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--fader);
	mix-blend-mode: multiply;
}
.media {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
.media > video,
.media > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}


.flex {
	display: flex;
}
.wrap {
	flex-wrap: wrap;
}
.nowrap {
	flex-wrap: nowrap;
}
.vcenter {
	align-content: center;
	align-items: center;
}
.hcenter {
	justify-content: center;
}
.tcenter {
	text-align: center;
}
.between {
	justify-content: space-between;
}


.buttons {
	display: flex;
	flex-wrap: wrap;
	column-gap: 0.75em;
}
.button {
	background: none;
	display: inline-block;
	margin: 1em auto 1em auto;
	border: 1px solid;
	padding: calc(0.75em - 1px) 2.25em calc(0.75em + 1px) 2.25em;
	text-align: center;
	transition: all var(--transition1);
	border-radius: 4px;
}
.hero-content .button {
	margin: 2em auto 0 auto;
}
.button.smaller {
	border-radius: unset;
	padding: calc(0.25em - 1px) 0.75em calc(0.25em + 1px) 0.75em;
	opacity: 0.5;
	margin: 0 auto 2em auto;
}
.button.smaller:hover {
	opacity: 1;
}

 
.twhite {
	color: var(--white);
}
.sticky .nav.twhite {
	color: var(--darkgreen);
}
.sticky .twhite {
	color: var(--darkgreen);
}

.bwhite {
	background-color: var(--white);
	border-color: var(--white);
}
.boffwhite {
	background-color: var(--offwhite);
	border-color: var(--offwhite);
}
.bgreen {
	background-color: var(--textgreen);
	border-color: var(--textgreen);
}
.blightgreen {
	background-color: var(--lightgreen);
	border-color: var(--lightgreen);
}
.bdarkgreen {
	background-color: var(--darkgreen);
	border-color: var(--darkgreen);
}	
.btextgreen {
	background-color: var(--textgreen);
	border-color: var(--textgreen);
}
.bcream {
	background-color: var(--cream);
	border-color: var(--cream);
}
.bgold {
	background-color: var(--gold);
	border-color: var(--gold);
}
.bsoftgold {
	background-color: var(--softgold);
	border-color: var(--softgold);
}
.btransparent {
	background-color: transparent;
	border-color: inherit;	
}
.sticky .btransparent {
	border-color: var(--darkgreen);
}
body.page-template-template-portal .header .button.bgreen,
body.page-template-template-demo .header .button.bgreen {
	background-color: var(--darkgreen);
	border-color: var(--darkgreen);
}

.tgold {
	color: var(--gold);
}
.tsoftgold {
	color: var(--softgold);
}
.tcream {
	color: var(--cream);
}
.tblack {
	color: var(--black);
}
.tlightgreen {
	color: var(--lightgreen);
}
.tdarkgreen {
	color: var(--darkgreen);
}
.ttextgreen {
	color: var(--textgreen);
}


.button.bwhite {
	background-color: rgba(255, 255, 255, 0.85);
}
.button.bwhite:hover {
	background-color: var(--white);
}
.button.btransparent:hover {
	background-color: rgba(255, 255, 255, 0.25);
}
main .button.btransparent:hover,
.sticky .button.btransparent:hover {
	background-color: rgba(26, 99, 84, 0.10);
}
.button.bgreen:hover {
	background-color: var(--darkgreen);
	border-color: var(--darkgreen);
}
body.page-template-template-portal .header .button.bgreen:hover,
body.page-template-template-demo .header .button.bgreen:hover {
	border-color: var(--lightgreen);
}


/*------------------------------------*\
    PAGES
\*------------------------------------*/

section.hero {
	height: 100vh;
}
.hero .icon {
	width: 7vi;
	height: auto;
	max-width: 125px;
	display: block;
	margin: 0 auto 1em auto;
}
.hero-content {
	max-width: 540px;
	margin: 0 auto 0 auto;
}



section.boxesbasic {

}
section.boxes {
	padding-bottom: 0;
}
.boxes-holder {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	row-gap: 3em;
	column-gap: 3em;
}
.boxes-box {
	padding: 3em;
	text-align: center;
	background-color: var(--grey);
	border-radius: 1rem;
	position: relative;
}
.boxes-box a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.boxes-box .title {
	font-family: 'ObsidianLayers-BackgroundRoman';
	font-weight: normal;
	font-style: normal;
	font-size: 10em;
	font-size: clamp(120px, 16vb, 170px);
	line-height: 1em;
	margin: 0;
	transition: transform var(--transition1);
	transform-origin: center bottom;
}
.boxes-box:hover .title {
	transform: scale(1.1);
}
.boxes-box .category {
	font-family: 'ABCNormal-Regular';
	font-weight: normal;
	font-style: normal;
	font-size: 1.4em;
    line-height: 1em;
	margin-bottom: 0.25em;
}
.boxes-box .price {
	font-size: 1.2em;
    line-height: 1em;
	margin-bottom: 0.5em;
}
.boxes-box .offer {
	font-size: 0.9em;
	line-height: 1em;
	white-space: nowrap;
	margin-bottom: 0;
}
.boxes-box .offer span {
	display: inline-block;
	padding: 0.5em 1em 0.5em 1em;
}





section.slider {

}
.slider-holder {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-evenly;
}
.slider-contentleft {
	flex: 0.5;
	min-width: 0; 
}
.slider-contentright {
	flex: 1;
	min-width: 0; 
}
.slider-content {
	text-align: center;
	padding: 3em;
	margin: 0 auto 0 auto;
	position: relative;
	max-width: calc(380px + 3em + 3em);
}
.slider-media {
	position: relative;
	max-width: 890px;
	margin: 0 auto 0 auto;
	width: 100%;
	overflow: hidden;
}
.slider-media .icon {
	width: 7vi;
	max-width: 125px;
	position: absolute;
	top: 10%;
	z-index: 1;
}
.slider-media .icon.left {
	left: calc(15% / 4);
	transform: rotate(-7deg);
}
.slider-media .icon.right {
	right: calc(15% / 4);
	transform: rotate(6deg);
}
.slider-inner {
	position: relative;
	width: 100%;
}
.slider-disclaimer {
	position: absolute;
	top: calc(0% + 0.5em);
	left: calc(15% + 0.5em);
	width: calc(100% - (15%*2) - (0.5em*2));
	text-align: left;
	color: var(--white);
	z-index: 1;
}

.slider-slider {
	z-index: 0;
}
section.slider .slick-track {
	max-height: 544px;
}
.slider-slider img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.slider-slider::before,
.slider-slider::after {
    content: '';
    position: absolute;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    background-color: var(--cream);
    top: -1px;
	bottom: -1px;
    left: -1px;
	right: -1px;
	z-index: 1;
}
.slider-slider::before {
	clip-path: polygon(85% 0, 100% 50%, 85% 100%, 100% 100%, 100% 0);
}
.slider-slider::after {
	clip-path: polygon(15% 0, 0 50%, 15% 100%, 0 100%, 0 0);
}
.slider-nav {
	position: absolute;
	bottom: 0;
	left: calc(15% / 2);
	z-index: 1;
}
.slider-arrows {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;	
	column-gap: 1.5px;
}
.slider-arrows button {
	background-color: var(--fadedgreen3);
	border: none;
	color: transparent;
	padding: 0.5em;
	min-width: 84px;
	min-height: 42px;
	transition: background-color var(--transition1);
	position: relative;
}
.slider-arrows button:hover {
	background-color: #6B9088;
}
.slider-arrows button::after {
	position: absolute;
	width: 7px;
	margin-left: calc(7px / -2);
	height: 10px;
	margin-top: calc(10px / -2);
	top: 50%;
	left: 50%;
	line-height: 10px;
	content: "";
}
.slider-arrows button:first-of-type::after {
	content: url('img/slider-left.svg');
}
.slider-arrows button:last-of-type::after {
	content: url('img/slider-right.svg');
}
.slider-progress {
	margin-bottom: 1.5px;
	position: relative;
	height: 3px;
}
.slider-progress hr {
	position: absolute;
	width: 100%;
	background-color: var(--fadedgreen3);
	height: 100%;
	margin: 0;
	padding: 0;
	border: none;
}
.slider-progress hr:last-of-type {
	background-color: var(--lightgreen);
	width: 0;
}
.slider-progress hr.progress {
	transition: width 4000ms linear;
}
.slider-progress hr.active {
	width: 100%;
}
.slider-caption {
	position: relative;
	width: calc(100% - 15%);
	left: calc(15% / 2);
	margin-top: 0.5em;
	min-height: calc(2 * 1.25em);
}
.slider-caption p {
	display: none;
	margin: 0 0 0 0;
	line-height: 1.25em;
}




section.carousel {
	overflow: hidden;
}
section.carousel .slick-list {
	overflow: visible;
}
section.carousel .slick-track {
	margin-left: -1.5em;
}
section.carousel .slick-slide {
	padding-left: 1.5em;
	padding-right: 1.5em;
}
.carousel-carousel {
	width: 100%;
	z-index: 0;
}
.carousel-carousel img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.carousel-caption {
	margin: 0.5em 0 0 0;
	line-height: 1.25em;
}
.carousel-image {
	position: relative;
}
.carousel-overlay {
	position: absolute;
	top: -1px;
	left: -1px;
	width: 101%;
	height: 101%;
	background-color: var(--cream);
}
.carousel-overlay:nth-of-type(1) {
	clip-path: polygon(100% 0, 90% 0, 100% 10%);
}
.carousel-overlay:nth-of-type(2) {
	clip-path: polygon(100% 100%, 90% 100%, 100% 90%);
}
.carousel-overlay:nth-of-type(3) {
	clip-path: polygon(0 0, 10% 0, 0 10%);
}
.carousel-holder {
	position: relative;
	padding-top: 1em;
}
.carousel-holder .slick-arrow {
	position: absolute;
	padding: 0.5em;
	background-color: var(--darkgreen);
	border: none;
	color: transparent;
	transition: background-color var(--transition1);
	min-width: 84px;
	min-height: 42px;
	top: calc(50% - 1em);
	z-index: 1;
}
.carousel-holder .slick-arrow.slick-disabled {
	background-color: #d1dfdc;
	pointer-events: none;
}
.carousel-holder .slick-arrow.slick-disabled::after {
	mix-blend-mode: hard-light;
}
.carousel-holder .slick-arrow:hover {
	background-color: var(--textgreen);
}
.carousel-holder .slick-arrow.slick-next {
	right: 3em;
	transform: translate(50%, -50%);
}
.carousel-holder .slick-arrow.slick-prev {
	left: 0;
	transform: translate(-50%, -50%);
}
.carousel-holder .slick-arrow::after {
	position: absolute;
	width: 7px;
	margin-left: calc(7px / -2);
	height: 10px;
	margin-top: calc(10px / -2);
	top: 50%;
	left: 50%;
	line-height: 10px;
	content: "";
}
.carousel-holder .slick-arrow.slick-prev::after {
	content: url('img/slider-left.svg');
}
.carousel-holder .slick-arrow.slick-next::after {
	content: url('img/slider-right.svg');
}




section.gallery {
	overflow: hidden;
}
section.gallery .icon {
	position: absolute;
	top: 1em;
	z-index: 1;
	right: 0;
	max-width: 130px;
	transform: rotate(10deg) translateY(-50%);
}
section.gallery .slick-track {
	max-height: 765px;
	margin-left: -1.5em;
}
section.gallery .slick-list {
	overflow: visible;
}
section.gallery .slick-slide {
	padding-left: 1.5em;
	padding-right: 1.5em;
	position: relative;
}
.gallery-gallery .gallery-overlay {
	position: absolute;
	top: 0;
	left: 1.5em;
    width: calc(100% - 3em);
	height: 100%;
	cursor: pointer;
	z-index: 1;
}
.gallery-gallery .gallery-overlay img {
	width: 64px;
	height: 74px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.gallery-gallery {
	width: 80%;
	z-index: 0;
}
.gallery-gallery video,
.gallery-gallery img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.gallery-holder {
	position: relative;
	padding-top: 1em;
}
.gallery-holder .slick-arrow {
	position: absolute;
	padding: 0.5em;
	background-color: var(--lightgreen);
	border: none;
	color: transparent;
	transition: background-color var(--transition1);
	min-width: 84px;
	min-height: 42px;
	top: calc(50% - 1em);
	z-index: 1;
}
.gallery-holder .slick-arrow.slick-disabled {
	background-color: #d1dfdc;
	pointer-events: none;
}
.gallery-holder .slick-arrow.slick-disabled::after {
	mix-blend-mode: hard-light;
}
.gallery-holder .slick-arrow:hover {
	background-color: #32b295;
}
.gallery-holder .slick-arrow.slick-next {
	right: 3em;
	transform: translate(50%, -50%);
}
.gallery-holder .slick-arrow.slick-prev {
	left: 0;
	transform: translate(-50%, -50%);
}
.gallery-holder .slick-arrow::after {
	position: absolute;
	width: 7px;
	margin-left: calc(7px / -2);
	height: 10px;
	margin-top: calc(10px / -2);
	top: 50%;
	left: 50%;
	line-height: 7px;
	content: "";
}
.gallery-holder .slick-arrow.slick-prev::after {
	content: url('img/gallery-left.svg');
}
.gallery-holder .slick-arrow.slick-next::after {
	content: url('img/gallery-right.svg');
}




/* slick */
.slick-track {
    display: flex !important;
	align-items: stretch;
}
.slick-slide {
    height: inherit !important;
}





section.spacer {

}
.spacer-holder {

}


section.signup {

}
.signup-holder {
	position: relative;
	border-radius: 1px;
	padding: 6vi;
}
.signup-image {
	position: relative;
	width: 100%;
}
.signup-image img {
	width: 100%;
	height: auto;
	object-fit: cover;
}
.signup-pattern {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	mix-blend-mode: multiply;
	object-fit: cover;
}
.signup-form {
	position: relative;
	z-index: 1;
}
.signup-form .gform-button {
	background-color: var(--darkgreen);
	border-color: var(--darkgreen);
	color: var(--white);
}
.signup-form .gform-button:hover {
	border-color: var(--lightgreen);
}
.signup-form input {
	background-color: var(--white);
	border-color: var(--white);
	color: var(--black);
}
.signup-form input:focus {
	border-color: var(--lightgreen);
}



section.offer {

}
.offer-holder {
	max-width: 896px;
	background-color: var(--white);
	margin: 0 auto 0 auto;
	padding: 3em calc(3em * 2) calc(3em - 2em) calc(3em * 2);
	text-align: center;
	border-radius: 12px;
}
.offer-holder a.button {
	margin-right: 0.5em;
	margin-left: 0.5em;
	min-width: 200px;
}
.offer-pattern {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0.7;
	z-index: 0;
}
.offer-content p {
	font-size: 1.175em;
    line-height: 1.4em;
}


section.lists {

}
.lists-holder {

}
.lists-content {
	margin: 3em auto 0 auto;
	column-count: 2;
	column-gap: 5em;
}
.lists-list {
	break-inside: avoid;
	margin: 0 auto 3em auto;
}
.lists-list ul {
	margin: 0 0 0 0;
	padding: 0 0 0 1em;
	list-style: none;
}
.lists-list ul li {
	position: relative;
}
.lists-list ul li::before {
	position: absolute;
	left: -1em;
	width: 7px;
	height: 7px;
	content: url('img/list.svg');

}



section.table {

}
.wrapper > div.table-holder {
	transition: height var(--transition1);
	position: relative;
	overflow: hidden;
}
.wrapper > div.table-revealer {
	height: calc((1*1.5em) + (0.5em*6) + (3*1.5em) + (1.25em*6)) !important;

}
.table-fader {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: calc(2 * ((1*1.5em) + (1.25em*6)));
	background: linear-gradient(180deg, rgba(242,243,243,0) 25%, rgba(242,243,243,1) 100%);
}
.gotablereveal {
	display: block;
}
.gotablereveal svg {
	vertical-align: middle;
    margin: -1px 0 0 0.5em;
}

.table-table {

}
table {
	color: var(--black);
	width: 100%;
}
table strong {
	font-family: 'ABCNormal-Medium';
	font-weight: normal;
	font-style: normal;
}
thead {
	background-color: var(--softblack);
	color: var(--white);
}
th {
	font-weight: unset;
	text-align: unset;
	padding: 0.5em 1em;
}
tbody tr {
	border-bottom: 1px solid #cbcdcc;
	background-color: transparent;
	transition: background-color var(--transition1);
}
tbody tr:hover {
	background-color: var(--white);
}
tr.inactive {
	cursor: default;
	background-color: #E2E2E2 !important;
}
tr.inactive a {
	cursor: default;
}
tr.notarow {
	border: none;
	background-color: transparent !important;
}
td {
	padding: 0;
}
td a {
	display: block;
	padding: 1.25em 1em;
	margin: 0;
}
td.status a {
	padding: 0 1em;
}
td.status .button {
	display: block;
    padding: 0.75em 0.25em;
    text-align: center;
	min-width: 60px;
	max-width: 120px;
}
td.status .button.view {
	color: var(--lightgreen);
	border: none;
	background-color: var(--darkgreen);
}
td.status .button.reserved,
td.status .button.sold {
	color: var(--white);
	border: none;
}
td.status .button.reserved {
	background-color: #E0872E;
}
td.status .button.sold {
	background-color: #D50000;
}

.tablesorter-headerUnSorted {
	cursor: s-resize;
}
.tablesorter-headerUnSorted > div {
	background-image: url('img/sort.svg');
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 12px auto;
	padding-right: 12px;
}
.tablesorter-headerAsc {
	cursor: n-resize;
}
.tablesorter-headerAsc > div {
	background-image: url('img/sort-down.svg');
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 12px auto;
	padding-right: 12px;
}
.tablesorter-headerDesc {
	cursor: s-resize;
}
.tablesorter-headerDesc	> div {
	background-image: url('img/sort-up.svg');
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 12px auto;
	padding-right: 12px;
}
.tablesorter-header.sorter-false {
	cursor: default;
}
.tablesorter-header.sorter-false > div {
	background-image: none;
	padding-right: 0;
}
.mostviewed {
	width: 56px;
	height: auto;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	margin-left: 1em;
}


section.apartment {

}
.apartment-holder {
	display: flex;
	flex-wrap: wrap;
	column-gap: 3em;
	align-items: stretch;
}
.apartment-holder > div {
	flex: 1;
}
.apartment-floorplan {
	margin-bottom: 2em;
}
.apartment-tables {
	margin-bottom: 2em;
}
.apartment-tables .table-holder {
	margin-bottom: 2em;
}
.apartment-tables .table-holder:last-of-type {
	margin-bottom: 0;
}
.apartment-tables .table-holder:last-of-type {
	border-radius: 12px;
	padding: calc((3em / 2) - (1px * 2));
	background-color: #f6f7f7;
	border: 1px solid #9a9b9b;
}
.floorplan-holder {
	background-color: var(--grey);
	border-radius: 12px;
	padding: 3em;
}
.floorplan-holder img {
	width: 100%;
	height: auto;
}
body.single .floorplan-holder img {
	padding: calc(10% / 2) 10% 10% 10%;
}
.table-pricing {
	font-size: 1.2em;
}
.table-pricing td {
    padding: 0.75em 0;
}
.table-pricing tbody tr:hover {
	background-color: unset;
}
.table-pricing td span {
	display: inline-block;
}


section.development {

}
.development-holder {
	display: flex;
	flex-wrap: wrap;
	column-gap: 3em;
	align-items: stretch;
}
.development-holder > div {
	flex: 1;
}
.aspect-outer {
	margin: 0 auto 1em auto;
	display: flex;
	flex-wrap: nowrap;
}
.development-floorplan {
	margin-bottom: 2em;
}
.development-tables {
	display: flex;
	flex-wrap: wrap;
	align-content: space-between;
	margin-bottom: 2em;
}
.development-tables > div {
	flex-basis: 100%;
}
.development-tables-bottom {
	display: flex;
	flex-wrap: nowrap;
	column-gap: 1em;
	row-gap: 1em;
	align-items: end;
}
.development-tables .table-holder {
	margin-bottom: 2em;
}
.development-tables tbody tr:hover {
	background-color: var(--offwhite);
}

.aspect-holder {
	position: relative;
}
.aspect-holder img {
	position: relative;
	width: 100%;
	height: auto;
}
.aspect-holder img:first-of-type,
.aspect-holder img:last-of-type {
	position: absolute;
	top: 0;
	left: 0;
}
.aspect-side {
	position: relative;
}
.aspect-side img {
	width: 100%;
	height: auto;
	opacity: 0.5;
}
.elevation-holder {
	position: relative;
	max-width: 160px;
}
.elevation-holder img {
	width: 100%;
	height: auto;
}
.elevation-holder img:first-of-type {
	position: absolute;
	top: 0;
	left: 0;
}


/*------------------------------------*\
    IMAGES
\*------------------------------------*/





/*------------------------------------*\
    FORMS
\*------------------------------------*/

.forms-holder {
	display: flex;
    flex-wrap: wrap;
    align-content: center;
}
.wrapper > div.forms-holder {
	max-width: 1360px;
	margin: 0 auto 0 auto;
	padding: 0 0 0 0;
}

#gform_1 .gform_fields {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	column-gap: 1em;
	row-gap: 1em;
	align-items: center;
}
#gform_2 .gform_fields,
#gform_12 .gform_fields {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	column-gap: 1em;
	row-gap: 0.5em;
	align-items: center;
}
#gform_3 .gform_fields {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 0.5em;
	row-gap: 0.5em;
	align-items: center;
}
#gform_4 .gform_fields {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	column-gap: 0.5em;
	row-gap: 0.5em;
	align-items: center;
}

.hiddenfield {
	display: none !important;
	pointer-events: none !important;
}
.gsection_title,
.gform_validation_errors,
.grecaptcha-badge,
.gfield.hidden_label > legend,
.gfield.hidden_label > label,
.gfield--type-honeypot,
.gfield--type-hidden,
.gform_required_legend,
#field_1_14,
#label_1_12_1 {
	display: none;
}
#gform_10 .gsection_title {
    margin: 0 0 1em 0;
    display: block;
}
h3.gsection_title {
	text-transform: uppercase;
	color: var(--lightgreen);
}
#gform_10 .gfield--type-section {
	margin-top: 3em;
}

#gform_10 .gfield--type-html,
#gform_10 .gfield--type-signature,
#gform_10 .ginput_container_address > span,
#gform_10 .gfield--type-email,
#gform_10 .gfield--type-text,
#gform_10 .gfield--type-number,
#gform_10 .gfield--type-date,
#gform_10 .gfield--type-phone {
	display: grid;
	grid-template-columns: 1.5fr 1fr;
	align-items: center;
	border-top: 1px solid rgba(255, 255, 255, 0.15);
	padding: 1em 0 1em 0;
}
#gform_10 .ginput_container_address {
	display: block;
}

.readonly select,
.readonly textarea,
.readonly input {
	pointer-events: none;
	border: none;
	opacity: 0.75;
	padding: 0;
}
.readonly label {
	pointer-events: none;
}
.readonly textarea {
	resize: none;
	opacity: 1;
}

.gfield_signature_container {
	width: 100% !important;
	border-radius: 4px;
	overflow: hidden;
}
.gfield_signature_ui_container > div {
	width: 100% !important;
	margin: unset !important
}
.gfield--type-html img,
.gfield_signature_ui_container img {
	margin: unset !important;
}
.gfield_signature_container img,
.gfield_signature_ui_container canvas {
	border: none !important;
}
.gfield_signature_ui_container canvas {
	width: 100% !important;
	height: auto !important;
}

#gform_10 .gfield:not(#field_10_3) .ginput_container_consent {
	padding: 1em 0 1em 0;
	margin: 0 auto 0 auto;
	border-bottom: none;
}
#field_10_8 input,
#field_10_19 input,
#field_10_19 select,
#field_10_7 input,
#field_10_39 input,
#field_10_9 input,
#field_10_52 input,
#field_10_53 input,
#field_10_56 input,
#field_10_54 input,
#field_10_55 input,
#field_10_58 input,
#field_10_64 input,
#field_10_65 input,
#field_10_66 input,
#field_10_67 input,
#field_10_68 input,
#field_10_65 select,
#field_10_70 input {
	background-color: var(--white);
	color: var(--darkgreen);
}
#field_10_10 textarea {
	background-color: #327366;
	padding: 1em;
	margin-top: 0.5em;
	color: rgba(255, 255, 255, 0.75);
}
#field_10_38 textarea {
	margin-top: 0.5em;
	background-color: var(--white);
	color: var(--darkgreen);
}
#field_10_38 textarea::placeholder {
	color: var(--darkgreen);
	opacity: 0.5;
}
#field_10_57 .addsignature,
#field_10_62 div {
	background-color: #327366;
    padding: 1em;
	border-radius: 4px;
}
#field_10_57 .addsignature img {
	filter: invert(1);
}
#field_10_72.gfield--type-html {
	display: block;
	border-top: none;
	padding-bottom: 0;
}

.addborders {
	padding: 1em 0 1em 0;
	border-top: 1px solid rgba(255, 255, 255, 0.15);
}
.textright input {
	text-align: right;
}

#gform_10 .gfield.addanother {
	display: block;
}
#gform_10 .gfield.addanother button {
	width: 100%;
}


.gfield_validation_message {
	font-size: 0.75em;
    color: #ff8585;
}
#gform_4 .gfield_validation_message {
	position: absolute;
}
.signup-form .gfield_validation_message {
	position: absolute;
	bottom: 100%;
}
.gsection_description {
	font-size: 1.1em;
	line-height: 1.5em;
	font-family: 'ABCNormal-Normal';
	font-weight: normal;
	font-style: normal;
}
.gsection_description .theagents {
	column-gap: 3em;
	font-family: 'ABCNormal-Medium';
	font-weight: normal;
	font-style: normal;
}
.gsection_description .theagents .adm {
	max-width: 150px;
}
.gsection_description .theagents .sav {
	max-width: 94px;
}

.gform_wrapper {
	position: relative;
}
.gform_wrapper .gform_ajax_spinner {
	position: absolute;
	display: none;
}


#gform_1 .gfield {
	grid-column: 3 / span 2;
}
#gform_1 #field_1_1,
#gform_1 #field_1_3,
#gform_1 #field_1_4,
#gform_1 #field_1_16 {
	grid-column: 1 / span 2;
	grid-row: 1 / span 9;
	padding: 0 calc(5em + 3em) 0 0;
}
#gform_1 #field_1_8 {
	grid-column: 3 / span 1;
	grid-row: 3 / span 1;
}
#gform_1 #field_1_9 {
	grid-column: 4 / span 1;
	grid-row: 3 / span 1;
}

#field_2_1,
#field_12_1 {
	grid-column: 1 / span 2;
	grid-row: 1 / span 1;
}
#field_2_5,
#field_12_8 {
	grid-column: 1 / span 5;
	grid-row: 2 / span 1;
}

#field_3_1 {
	grid-column: 1 / span 2;
	grid-row: 1 / span 1;
}
#field_3_5 {
	grid-column: 1 / span 2;
	grid-row: 3 / span 1;
}
#gform_3 #field_submit {
	grid-column: 1 / span 2;
	grid-row: 4 / span 1;
}

#field_4_1 {
	grid-column: 1 / span 2;
}

fieldset {
	border: none;
	margin: 0;
	padding: 0;
}

.gfield {
	position: relative;
    font-size: 1.06em;
	font-family: 'ABCNormal-Regular';
	font-weight: normal;
	font-style: normal;
}
#gform_3 .gfield {
	font-size: 0.825em;
}
.gfield h1 {
	font-size: clamp(32px, 5vb, 46px);
}


.gfield img {
	width: 100%;
	height: auto;
	max-width: 100%;
	margin: 2em auto 0 auto;
}


.gfield--type-checkbox::after {
	clear: both;
	content: "";
	display: table;
}
.gfield--type-checkbox > legend {
	float: left;
}
.gfield--type-checkbox > div {
	float: right;
}
.gchoice {
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row-reverse;
	column-gap: 0.5em;
}
.gchoice label {
	white-space: nowrap;
}
.gfield_checkbox {
	display: flex;
	flex-wrap: wrap;
	column-gap: 1em;
}

.ginput_complex {
	display: flex;
	flex-wrap: wrap;
	column-gap: 1em;
}
#gform_3 .ginput_complex {
	column-gap: 0.5em;
}
.ginput_complex > span {
	flex: 1;
}



input, select, textarea {
	width: 100%;
	background-color: transparent;
	border: 1px solid rgba(255,255,255,0.50);
	color: var(--white);
	padding: calc(0.75em - 1px) 1em calc(0.75em - 1px) 1em;
	border-radius: 4px;
	transition: border var(--transition1);
}
textarea {
	line-height: 1.25em;
	resize: vertical;
	height: calc((1.06em * 1.25 * 4) + (2 * (0.75em - 1px)));
}
#gform_3 input, #gform_3 select, #gform_3 textarea {
	background-color: #4c736c;
	border: 1px solid #4c736c;
}
input:focus, select:focus, textarea:focus,
#gform_3 input:focus, #gform_3 select:focus, #gform_3 textarea:focus {
	border: 1px solid rgba(255,255,255,1);
}
input:focus-visible, select:focus-visible, textarea:focus-visible {
	outline: none;
}
select {
	appearance: none;
	background-image: url('img/select.svg');
	background-repeat: no-repeat;
	background-position: calc(100% - 1em) center;
	background-size: 14px auto;
	padding-right: calc(1em + 14px);
}

.gform-button,
#gform_3 .gform-button {
	font-size: 1.06em;
	margin: 0 auto 0 auto;
	text-align: left;
	padding: calc(0.75em - 1px) 1em calc(0.75em - 1px) 1em;
	border-color: var(--lightgreen);
	background-color: var(--lightgreen);
	color: var(--darkgreen);
	font-family: 'ABCNormal-Medium';
	font-weight: normal;
	font-style: normal;
}
#gform_3 .gform-button {
	background-color: #2da287;
	border-color: #2da287;
}
.gform-button:hover {
	border-color: var(--white);
}
#gform_3 .gform-button:hover {
	background-color: var(--lightgreen);
	border-color: var(--white);
}

.gfield .consent {
	opacity: 1;
	margin-bottom: 0;
}
#gform_1 .gfield .consent {
	opacity: 0.5;
}
.gfield .consent a {
	text-decoration: underline;
}


input[type="checkbox"] {
	appearance: none; /* Remove default checkbox styling */
	width: 25px;
	height: 25px;
	min-width: 25px;
	min-height: 25px;
	border-radius: 25px;
	border: 1px solid var(--fadedgreen1);
	background-color: transparent;
	position: relative;
	cursor: pointer;
	outline: none; 
	transition: all var(--transition1);
}
input[type="checkbox"]:hover {
	border-color: var(--white);
}
input[type="checkbox"]:checked {
	background-color: var(--lightgreen);
	border-color: var(--lightgreen);
}
input[type="checkbox"]:checked::after {
	content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 50%;
    height: 25%;
    border: solid var(--darkgreen);
    border-width: 0 2.5px 2.5px 0;
    transform: translate(-50%, -75%) rotate(130deg) scaleY(-1);
    display: inline-block;
}


#gform_confirmation_message_1 {
	text-align: center;
}


/*------------------------------------*\
	PORTAL
\*------------------------------------*/

.portal-content h3 {
	margin-top: 5em;
}
.portal-content h3:first-of-type {
	margin-top: 0;
}

.portal-table {
	margin: 4em auto 4em auto;
	width: 100%;
	display: grid;
    grid-template-columns: 2fr 1fr 1fr;
}
.portal-table > div {
	padding: 0.5em 0 0.5em 0;
	border-top: 1px solid rgba(255, 255, 255, 0.15);
	display: flex;
    align-items: center;
    flex-wrap: nowrap;
}
.portal-table > div.noborder {
	padding: 0 0 0.5em 0;
	border-top: none;
}
.portal-table > div img {
	margin-right: 0.5em;
	vertical-align: middle;
}



.portal-object {
	height: calc(100dvh - var(--header-height));
}

.portal-list {
	display: grid;
    grid-template-columns: 1.5fr 1fr;
}
.portal-list > div {
	padding: 1em 0 1em 0;
	border-top: 1px solid rgba(255, 255, 255, 0.15);
}
.portal-list > div span {
	opacity: 0.75;
}

.portal-action.button {
	margin: unset;
	width: 100%;
	text-decoration: none;
}
.portal-action.button.download,
.portal-action.button.back {
	margin: 0 auto 2em auto;
	width: auto;
	color: var(--white);
	background-color: transparent;
}
.portal-action.button.complete {
	color: var(--white);
	background-color: transparent;
}
.portal-action.button.started,
.portal-action.button.incomplete {
	color: var(--darkgreen);
	background-color: var(--lightgreen);
}
.portal-action.button.failed {
	color: var(--white);
	background-color: #D50000;
}
.portal-action.button.review {
	color: var(--white);
	background-color: #E0872E;
}


.portal-forms .ginput_container_consent {
	margin: 2em auto 2em auto;
	padding: 2em 0 2em 0;
	border-top: 1px solid rgba(255, 255, 255, 0.15);
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
	display: flex;
    flex-wrap: nowrap;
    flex-direction: row-reverse;
    column-gap: 1em;
    justify-content: space-between;
    align-items: center;

}
.gfield_consent_label {
	cursor: pointer;
}

body.page-template-template-portal main {
	position: relative;
}
.portal-pattern {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    object-fit: contain;
    opacity: 0.5;
    z-index: -1;
	overflow: hidden;
}
.portal-fader {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(180deg, rgba(26,99,84,1) 55%, rgba(26,99,84,0) 100%);
	z-index: 0;
}



/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/

@font-face {
	font-family:'IvyOraDisplay-Light';
	src:url('fonts/IvyOraDisplay-Light.eot') format('embedded-opentype'),
		url('fonts/IvyOraDisplay-Light.woff') format('woff'),
		url('fonts/IvyOraDisplay-Light.ttf') format('truetype'),
		url('fonts/IvyOraDisplay-Light.woff2') format('woff2');
    font-weight:normal;
    font-style:normal;
}
@font-face {
	font-family:'IvyOraDisplay-Medium';
	src:url('fonts/IvyOraDisplay-Medium.eot') format('embedded-opentype'),
		url('fonts/IvyOraDisplay-Medium.woff') format('woff'),
		url('fonts/IvyOraDisplay-Medium.ttf') format('truetype'),
		url('fonts/IvyOraDisplay-Medium.woff2') format('woff2');
    font-weight:normal;
    font-style:normal;
}

@font-face {
	font-family:'ABCNormal-Normal';
	src:url('fonts/abcnormal-normal.eot') format('embedded-opentype'),
		url('fonts/abcnormal-normal.woff') format('woff'),
		url('fonts/abcnormal-normal.ttf') format('truetype'),
		url('fonts/abcnormal-normal.woff2') format('woff2');
    font-weight:normal;
    font-style:normal;
}
@font-face {
	font-family:'ABCNormal-NormalOblique';
	src:url('fonts/abcnormal-normaloblique.eot') format('embedded-opentype'),
		url('fonts/abcnormal-normaloblique.woff') format('woff'),
		url('fonts/abcnormal-normaloblique.ttf') format('truetype'),
		url('fonts/abcnormal-normaloblique.woff2') format('woff2');
    font-weight:normal;
    font-style:normal;
}
@font-face {
	font-family:'ABCNormal-Regular';
	src:url('fonts/abcnormal-regular.eot') format('embedded-opentype'),
		url('fonts/abcnormal-regular.woff') format('woff'),
		url('fonts/abcnormal-regular.ttf') format('truetype'),
		url('fonts/abcnormal-regular.woff2') format('woff2');
    font-weight:normal;
    font-style:normal;
}
@font-face {
	font-family:'ABCNormal-Medium';
	src:url('fonts/abcnormal-medium.eot') format('embedded-opentype'),
		url('fonts/abcnormal-medium.woff') format('woff'),
		url('fonts/abcnormal-medium.ttf') format('truetype'),
		url('fonts/abcnormal-medium.woff2') format('woff2');
    font-weight:normal;
    font-style:normal;
}
@font-face {
	font-family:'ABCNormal-MediumOblique';
	src:url('fonts/abcnormal-mediumoblique.eot') format('embedded-opentype'),
		url('fonts/abcnormal-mediumoblique.woff') format('woff'),
		url('fonts/abcnormal-mediumoblique.ttf') format('truetype'),
		url('fonts/abcnormal-mediumoblique.woff2') format('woff2');
	font-weight:normal;
	font-style:normal;
}
@font-face {
	font-family:'ABCNormal-Bold';
	src:url('fonts/abcnormal-bold.eot') format('embedded-opentype'),
		url('fonts/abcnormal-bold.woff') format('woff'),
		url('fonts/abcnormal-bold.ttf') format('truetype'),
		url('fonts/abcnormal-bold.woff2') format('woff2');
    font-weight:normal;
    font-style:normal;
}

@font-face {
	font-family:'ObsidianLayers-BackgroundRoman';
	src:url('fonts/obsidianlayers-backgroundroman.eot') format('embedded-opentype'),
		url('fonts/obsidianlayers-backgroundroman.woff') format('woff'),
		url('fonts/obsidianlayers-backgroundroman.otf') format('opentype'),
		url('fonts/obsidianlayers-backgroundroman.woff2') format('woff2');
    font-weight:normal;
    font-style:normal;
}

@font-face {
	font-family:'FormulaCondensed-Light';
	src:url('fonts/formulacondensed-light.eot') format('embedded-opentype'),
		url('fonts/formulacondensed-light.woff') format('woff'),
		url('fonts/formulacondensed-light.otf') format('opentype'),
		url('fonts/formulacondensed-light.woff2') format('woff2');
    font-weight:normal;
    font-style:normal;
}
@font-face {
	font-family:'FormulaCondensed-Regular';
	src:url('fonts/formulacondensed-regular.eot') format('embedded-opentype'),
		url('fonts/formulacondensed-regular.woff') format('woff'),
		url('fonts/formulacondensed-regular.otf') format('opentype'),
		url('fonts/formulacondensed-regular.woff2') format('woff2');
    font-weight:normal;
    font-style:normal;
}





@font-feature-values 'FormulaCondensed-Light' {
	@styleset {
		long: 01;
	}
}
i {
	font-style: normal;
	font-variant-alternates: styleset(long);
}


h1 {
	font-family:'FormulaCondensed-Light';
	font-size: 4.4em;
	font-size: clamp(44px, 7vb, 74px);
	line-height: 1.2em;
	font-weight: normal;
	font-style: normal;
	text-transform: uppercase;
	margin: 0 0 0 0;
}
.page-template-template-landing section:not(.hero) h1 {
	margin: 0.5em auto 0.25em auto;
}
.page-template-template-landing section.landing .mw300 {
	max-width: 450px;
}
.page-template-template-landing section.landing .mw320 {
	max-width: 450px;
}
.page-template-template-landing section.landing .mw330 {
	max-width: 450px;
}
.page-template-template-landing section.landing .mw350 {
	max-width: 450px;
}
.page-template-template-landing h1 {
	line-height: 1;
}
.page-template-template-landing h1 span {
	white-space: nowrap;
}
body.page-template-template-portal article h1,
body.page-template-template-demo article h1 {
	font-family: 'ABCNormal-Normal';
	font-size: 1.75em;
	text-transform: none;
	margin-bottom: 2em;
}
h2 {
	font-family: 'ABCNormal-Normal';
    font-size: 1.25em;
    font-weight: normal;
    font-style: normal;
    margin: 0 0 0 0;
    line-height: 1.3em;
}
.page-template-template-landing h2 {
	font-family: 'ABCNormal-Regular';
	font-weight: normal;
}
h2 strong {
	font-family: 'ABCNormal-Medium';
	font-weight: normal;
    font-style: normal;
	font-size: 130%;
	line-height: 125%;
	display: block;
	margin: 0.25em 0 0.5em 0;
}
h3 {
	font-family: 'IvyOraDisplay-Medium';
	font-size: 1em;
	font-weight: normal;
	font-style: normal;
	line-height: inherit;
	margin: 0 0 0.25em 0;
	letter-spacing: 0.1em;
}
h4 {
	font-family:'FormulaCondensed-Light';
	font-size: 2.75em;
	font-size: clamp(32px, 5vb, 46px);
	line-height: 1.2em;
	font-weight: normal;
	font-style: normal;
	margin: 0 0 0.5em 0;
}
h5 {
	font-family:'FormulaCondensed-Light';
	font-size: 2.0em;
	font-size: clamp(24px, 4vb, 34px);
	line-height: 1.2em;
	font-weight: normal;
	font-style: normal;
	margin: 0 0 0.5em 0;
}




p {
	margin: 0 0 1em 0;
}

.nomargin {
	margin-bottom: 0;
}
.fullmargin {
	margin-bottom: 1em;
}
.halfmargin {
	margin-bottom: 0.5em;
}
.quartermargin {
	margin-bottom: 0.25em;
}

p small {
	font-size: 0.75em;
	font-size: clamp(9px, 2vb, 13px);
    line-height: 1.3em;
    display: inline-block;
}
.footer p small {
	font-size: clamp(9px, 2vb, 11px);
}

p strong {
	font-family: 'ABCNormal-Bold';
	font-weight: normal;	
	font-style: normal;
}
.page-template-template-landing p {
	margin-left: auto;
	margin-right: auto;
}
.page-template-template-landing p strong {
	font-family: 'ABCNormal-Regular';
    font-weight: normal;
    font-style: normal;
    font-size: 1.111em;
    line-height: 1.2;
}
.page-template-template-landing .footer p {
	line-height: 1.4;
}

.footer p.title {
    font-size: 2em;
    line-height: 1.2em;
}
.footer ul,
.footer p {
    font-size: 0.85em;
    line-height: 1.65em;
}


.iod-light {
	font-family:'IvyOraDisplay-Light';
	font-weight: normal;
	font-style: normal;
}
.iod-medium {
	font-family:'IvyOraDisplay-Medium';
	font-weight: normal;
	font-style: normal;
}

.abc-normal {
	font-family: 'ABCNormal-Normal';
	font-weight: normal;
	font-style: normal;
}
.abc-regular {
	font-family: 'ABCNormal-Regular';
	font-weight: normal;
    font-style: normal;
}
.abc-medium {
	font-family: 'ABCNormal-Medium';
	font-weight: normal;
	font-style: normal;
}

.fc-light {
	font-family: 'FormulaCondensed-Light';
	font-weight: normal;
	font-style: normal;
}
.fc-regular {
	font-family: 'FormulaCondensed-Regular';
	font-weight: normal;
	font-style: normal;
}

.uppercase {
	text-transform: uppercase;
}

/*------------------------------------*\
    LANDING
\*------------------------------------*/
.page-template-template-landing {
	font-size: 18px;
	line-height: 1.333;
}
.page-template-template-landing .header {
	position: absolute;
	background-color: transparent !important;
}
.page-template-template-landing .logo svg #Picturehouse {
	fill: var(--white) !important;	
}
.page-template-template-landing section:not(.hero,.empty) {
	padding: 3em 0 2em 0;
}
.page-template-template-landing .button:not(.gform-button) {
	width: auto;
	font-family: 'ABCNormal-Regular';
	font-weight: normal;
}
.page-template-template-landing section.landing img:not(.stars) {
	display: block;
	margin: 1.5em auto 1.5em auto;
	max-width: 720px;
	width: 100%;
}
.page-template-template-landing section.landing .gallery-holder {
	max-width: 720px;
    margin: 0 auto 0 auto;
}
.page-template-template-landing section.landing .gallery-holder .slick-arrow.slick-next {
	right: 0;
}
.page-template-template-landing blockquote {
	font-family:'ABCNormal-NormalOblique';
	font-weight: normal;
	font-style: normal;
	margin: 1.5em auto 0.5em auto;
}
.page-template-template-landing cite {
	font-family:'ABCNormal-MediumOblique';
	font-weight: normal;
	font-style: normal;
	display: block;
	margin: 0 auto 2em auto;
	font-size: 0.85em;
	line-height: 1.25em;
}
.page-template-template-landing section.landing .gform_wrapper {
	max-width: 720px;
	margin: 0 auto 3em auto;
}
.page-template-template-landing input:not(.gform-button),
.page-template-template-landing textarea {
	background-color: var(--white);
	color: var(--black);
	border: 1px solid var(--white);
	margin-bottom: 0.75em;
}
.page-template-template-landing select {
	background-color: var(--textgreen);
	color: var(--white);
	border: 1px solid var(--white);
	margin-bottom: 0.75em;
}
.page-template-template-landing label {
	color: var(--white);
}
.page-template-template-landing input:focus,
.page-template-template-landing textarea:focus,
.page-template-template-landing select:focus {
	border: 1px solid var(--lightgreen);
}
.page-template-template-landing ::placeholder {
	color: var(--black);
}
.page-template-template-landing .gfield--type-checkbox > legend,
.page-template-template-landing .gfield--type-checkbox > div {
	float: unset;
}
.page-template-template-landing .gfield .gfield-choice-input {
	margin-bottom: 0;
}
.page-template-template-landing .gfield .gchoice {
	width: 100%;
    background-color: var(--textgreen);
    justify-content: space-between;
    border-radius: 4px;
    transition: border var(--transition1);
	margin-bottom: 0.75em;
	border: 1px solid var(--white);
	padding: calc(0.75em - 1px) 1em calc(0.75em - 1px) 1em;
	cursor: pointer;
}
.page-template-template-landing .gfield .gchoice:hover {
	border: 1px solid var(--lightgreen);
}
.page-template-template-landing .gfield .gchoice label {
	cursor: pointer;
}
.page-template-template-landing .gform-button {
	font-family:'ABCNormal-Regular';
	font-weight: normal;
	border-color: var(--gold);
    background-color: var(--gold);
	color: var(--white);
}
.page-template-template-landing .gfield .consent {
	text-align: left;
	color: var(--white);
	margin: 0 auto 0.75em auto;
}
.page-template-template-landing .gfield .consent small {
	font-size: 0.725em;
}
.page-template-template-landing textarea {
	height: calc((18px * 1.25 * 1) + (2 * 0.75em));
}
.page-template-template-landing .footer {
	padding-top: 1.5em;
}
.page-template-template-landing .footer-holder > div {
    margin-bottom: 1em;
}
.page-template-template-landing .footer-holder > div:last-of-type {
	margin-bottom: 2em;
}
.page-template-template-landing .footer-logo svg {
	max-width: 114px;
}
.page-template-template-landing hr {
	background-color: var(--white);
	opacity: 0.5;
}
.page-template-template-landing .gfield_validation_message {
	text-align: left;
	margin: 0.5em auto 0.25em auto;
}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

.table-pricing td .mobile-sdlt,
#nav-contact,
#mobile-menu {
	display: none;
}

@media only screen and (max-width:1470px) {

	.footer-logo {
		max-width: 100px;
	}
	.footer-find {
		max-width: 200px;
	}
	.footer-register {
		max-width: 400px;
	}



	
}


@media only screen and (max-width:1366px) {

	.footer-logo {
		max-width: 100px;
	}
	.footer-find {
		max-width: 200px;
	}
	.footer-register {
		max-width: 300px;
	}

	#gform_3 .gform_fields {
		grid-template-columns: repeat(1, 1fr);
	}
	#field_3_1,
	#field_3_5,
	#gform_3 #field_submit {
		grid-column: unset;
		grid-row: unset;
	}
	#gform_3 .ginput_complex {
		row-gap: 0.5em;
	}
	#gform_3 .ginput_complex > span {
		flex-basis: 100%;
	}



}



@media only screen and (max-width:1180px) {
	
	.boxes-holder {
		grid-template-columns: repeat(2, 1fr);
	}





}


@media only screen and (max-width:1080px) {

	.nav li {
		margin: 0 1em 0 1em;
	}
	.footer-logo {
		max-width: 100px;
	}
	.page-template-template-landing .footer-logo {
		max-width: 200px;
	}
	.footer-find {
		max-width: 200px;
	}
	.footer-register .title,
	.footer-register .footer-form,
	.footer-register .footer-gap {
		display: none;
	}




}


@media only screen and (max-width:820px) {

	#nav-contact {
		width: 90%;
		margin: 0 auto 0 auto;
		font-size: 1em;
        line-height: 1.25em;
		position: fixed;
		bottom: 0;
		margin-bottom: calc(var(--navcontact-height) - 1em);
	}
	#nav-contact span {
		color: var(--fadedgreen1);
	}

	#niceroundel {
		top: 0;
		right: 0;
	}

	.nav {
		display: none;
		position: fixed;
		background-color: var(--textgreen);
		width: 100%;
		bottom: 0;
		left: 0;
		height: calc(100dvh - var(--header-height));
	}
	.nav ul {
		font-size: 1.75em;
		line-height: 1.0em;
		width: 90%;
		margin: 0.5em auto 0.5em auto;
		display: block;
		padding: 0 0 0 0;
	}	
	.nav li {
		margin: 0 auto 0 auto;
	}
	.nav ul a {
		display: block;
		border-bottom: 1px solid #498276;
		padding: 0.5em 0;
	}
	.nav .current_page_item a {
		border-bottom: 1px solid #498276;
	}
	#mobile-menu {
		padding: 0;
		height: 54px;
        width: 54px;
        line-height: 54px;
        border-radius: 54px;
        transform: unset;
        writing-mode: unset;
		display: block;
		border: none;
		background-color: var(--darkgreen);
	}
	.mobile-menu {
		height: 10px;
        margin: 22px 15px;
        position: relative;
	}
	.mobile-menu div {
		height: 1px;
        width: 100%;
        background: var(--lightgreen);
        position: absolute;
        transition: transform var(--transition1);
	}
	.mobile-menu-top {
        top: 0;
    }
	.mobile-menu.opened .mobile-menu-top {
        transform: translate(0, 4px) scaleX(1);
    }
	.mobile-menu-bottom {
		bottom: 0;
	}
	.mobile-menu.opened .mobile-menu-bottom {
        transform: translate(0, -4px) scaleX(1);
    }
	.buttons {
		display: none;
		position: fixed;
    	bottom: 5vw;
		width: 90%;
	}
	.buttons button {
		width: 100%;
		margin-bottom: 0;
	}
	.buttons button.bgreen {
		background-color: var(--darkgreen);
		border-color: var(--darkgreen);
	}
	.sticky .btransparent {
        border-color: inherit;
	}
	.sticky .nav.twhite,
	.sticky .twhite {
		color: var(--white);
	}

	#quickcontact {
		bottom: 5vw;
		right: 5%;
	}
	#quickcontact dialog {
		width: 90vw;
	}

	section.boxes {
		padding: 5% 0 5% 0;
	}
	.boxes-holder {
		grid-template-columns: repeat(1, 1fr);
		row-gap: 5vw;
	}

	section.signup {
		padding: 2.5em 0 2.5em 0;
	}

	.gallery-gallery {
		width: 100vw;
		left: -5vw;
	}

	section.hero {
		height: calc(100vh - var(--header-height));
	}
	.hero .icon {
		width: 10vb;
		max-width: 90px;
	}

	.slider-media .icon {
		width: 7.5vb;
		max-width: 90px;
	}
	.slider-media .icon.left {
		left: 0;
	}
	.slider-media .icon.right {
		right: 0;
	}

	.hero-content h1 br,
	.hero-content h2 br {
		display: none;
	}
	.page-template-template-landing .hero-content h1 br,
	.page-template-template-landing .hero-content h2 br {
		display: unset;
	}
	.hero-content h2 {
		max-width: 330px;
		margin: 0 auto 0 auto;
	}

	.page-template-template-landing section.landing img:not(.stars) {
		margin: 0 auto 0 auto;
	}
	.page-template-template-landing section.landing .mw300 {
		max-width: 300px;
	}
	.page-template-template-landing section.landing .mw320 {
		max-width: 320px;
	}
	.page-template-template-landing section.landing .mw330 {
		max-width: 330px;
	}
	.page-template-template-landing section.landing .mw350 {
		max-width: 350px;
	}
	.page-template-template-landing section.landing .gform_wrapper {
		margin-bottom: 0;
	}
	.page-template-template-landing section.landing .button:not(.gform-button) {
		width: 100%;
	}

	.logo {

	}
	.logo svg,
	.footer-logo svg {
		max-width: 90px;
	}
	.footer-logo img {
		max-width: 140px;
	}

	.wrapper {
		width: 90%;
	}
	#forms .wrapper {
		height: auto;
	}

	.footer-holder > div {
		flex-basis: 100%;
	}
	.footer-holder > div:last-of-type {
		margin-bottom: 3em;
		max-width: unset;
	}

	.ginput_complex > span {
		flex-basis: 100%;
	}

	#gform_1 .gform_fields,
	#gform_2 .gform_fields,
	#gform_12 .gform_fields,
	#gform_3 .gform_fields,
	#gform_4 .gform_fields {
		grid-template-columns: 1fr;
	}
	#gform_1 .gform_fields,
	#gform_2 .gform_fields,
	#gform_12 .gform_fields,
	#gform_3 .gform_fields,
	#gform_4 .gform_fields {
		row-gap: 0;
	}
	#field_2_1,
	#field_12_1,
	#field_2_5,
	#field_12_8,
	#field_3_1,
	#field_3_5,
	#gform_3 #field_submit,
	#field_4_1 {
		grid-column: unset;
		grid-row: unset;
	}

	#gform_4 input,
	.gfield .consent,
	.forms-holder input,
	.forms-holder select,
	.forms-holder textarea,
	.signup-form input,
	.footer-form input {
		margin-bottom: 0.5em;
	}
	.gfield img {
		margin-top: 0;
	}

	.gfield {
		font-size: 1.0em;
	}

	.signup-form .gfield_validation_message {
		position: relative;
		bottom: unset;
	}

	.gsection_description .theagents {
		column-gap: 2em;
		margin-bottom: 2em;
	}

	.footer-form {
		max-width: unset;
	}

	section.table {
		padding: 0 0 5% 0;
	}
	section.apartment .table-table th:nth-of-type(1),
	section.development .table-table th:nth-of-type(1),
	section.table .table-table th:nth-of-type(1) {
		padding: 0.5em 0.5em 0.5em 1em;
	}
	section.apartment .table-table td:nth-of-type(1) a,
	section.development .table-table td:nth-of-type(1) a,
	section.table .table-table td:nth-of-type(1) a {
		padding: 0.5em 0.5em 0.5em 1em;
	}
	section.table .table-table th:nth-of-type(3),
	section.table .table-table th:nth-of-type(4),
	section.table .table-table th:nth-of-type(5),
	section.table .table-table td:nth-of-type(3),
	section.table .table-table td:nth-of-type(4),
	section.table .table-table td:nth-of-type(5) {
		display: none;
	}
	.tablesorter-headerUnSorted > div,
	.tablesorter-headerAsc > div,
	.tablesorter-headerDesc	> div {
		background-image: none;
		padding-right: 0;
	}
	th {
		padding: 0.5em 0.5em;
	}
	td a {
		padding: 0.75em 0.5em;
	}
	.gotablereveal {
		width: 100%;
	}
	.development-tables-bottom {
		flex-wrap: wrap;
	}
	.development-tables-bottom > a {
		flex-basis: 100%;
	}
	.development-floorplan {
		display: none;
	}
	.table-pricing td .desktop-sdlt {
		display: none;
	}
	.table-pricing td .mobile-sdlt {
		display: inline-block;
	}
	.mostviewed {
		display: none;
	}

	section.carousel {
		padding: 2.5em 0 2.5em 0;
	}
	.carousel-carousel {
		width: 100vw;
		left: -5vw;
	}
	section.carousel .slick-track {
		margin-left: 0;
	}
	.carousel-holder .slick-arrow.slick-prev {
		left: 1.5em;
	}
	.carousel-holder .slick-arrow.slick-next {
		right: 1.5em;
	}


	section.gallery {
		padding: 2.5em 0 2.5em 0;
	}
	section.gallery .icon {
		max-width: 90px;
	}
	section.gallery .slick-track {
		margin-left: 0;
	}
	.gallery-holder .slick-arrow.slick-prev {
		left: calc(5vw + 1.5em);
	}
	.page-template-template-landing section.landing .gallery-holder .slick-arrow.slick-prev {
		left: 1.5em;
	}
	.gallery-holder .slick-arrow.slick-next {
		right: calc(5vw + 1.5em);
	}
	.page-template-template-landing section.landing .gallery-holder .slick-arrow.slick-next {
		right: 1.5em;
	}


	.floorplan-holder {
		padding: 2em;
	}
	body.single .floorplan-holder img,
	.floorplan-holder img {
		padding: 0;
	}


	section.slider {
		padding: 2.5em 0 2.5em 0;
	}
	.slider-contentleft,
	.slider-contentright {
		flex-basis: 100%;
	}
	.slider-content {
		padding: 1.5em;
	}
	
	#gform_1 .gfield {
		grid-column: unset !important;
		grid-row: unset !important;
		padding: 0 !important;
	}
	.gfield--type-checkbox > legend,
	.gfield--type-checkbox > div {
		float: left;
	}
	.gfield--type-checkbox > legend {
		width: 85%;
		margin-bottom: 0.5em;
	}

	.boxes-box {
		padding: 3em 1.5em 3em 1.5em;
	}

	section.lists {
		padding: 2.5em 0 2.5em 0;
	}
	.lists-content {
		column-count: 1;
		column-gap: 0;
	}


	.portal-list,
	.portal-table {
		grid-template-columns: 1fr;
	}
	.portal-table .noborder {
		display: none;
	}
	.portal-table > div:nth-of-type(3n) {
		margin-bottom: 1.75em;
	}
	.portal-list > div:nth-of-type(even) {
		padding-top: 0;
		border-top: none;
	}

	#gform_10 .gfield--type-html, #gform_10 .gfield--type-signature, #gform_10 .ginput_container_address > span, #gform_10 .gfield--type-email, #gform_10 .gfield--type-text, #gform_10 .gfield--type-number, #gform_10 .gfield--type-date, #gform_10 .gfield--type-phone {
		grid-template-columns: 1fr;
	}









	

	h1 {
		font-size: 2.5em;
	}
	.page-template-template-landing h1 {
        font-size: clamp(44px, 7vb, 64px);
		line-height: 1;
	}
	h2 {
		font-size: 1.125em;
	}
	h2 strong {
		font-size: 120%;
	}
	h3 {
		font-size: 0.8em;
	}
	h4 {
		font-size: 2.25em;
	}
	.footer p.title {
		font-size: 1.75em;
	}
	.boxes-box .title {
		font-size: 7.5em;
	}
	p small {
		font-size: 0.625em;
	}



}




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

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

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

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

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

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

}
@media only screen and (-webkit-min-device-pixel-ratio:1.5),
	   only screen and (min-resolution:144dpi) {

}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background: var(--darkgreen);
	color: #FFF;
	text-shadow: none;
}
::-webkit-selection {
	background: var(--darkgreen);
	color: #FFF;
	text-shadow: none;
}
::-ms-input-placeholder {
	background: var(--darkgreen);
	color: #FFF;
	text-shadow: none;
}
::-moz-selection {
	background: var(--darkgreen);
	color: #FFF;
	text-shadow: none;
}

::-webkit-input-placeholder {
	/* Chrome/Opera/Safari */
	color: var(--cream);
}
::-moz-placeholder {
	/* Firefox 19+ */
	color: var(--cream);
}
::-ms-input-placeholder {
	/* IE 10+ */
	color: var(--cream);
}
::-moz-placeholder {
	/* Firefox 18- */
	color: var(--cream);
}

.signup-form ::-webkit-input-placeholder {
	/* Chrome/Opera/Safari */
	color: var(--line);
}
.signup-form ::-moz-placeholder {
	/* Firefox 19+ */
	color: var(--line);
}
.signup-form ::-ms-input-placeholder {
	/* IE 10+ */
	color: var(--line);
}
.signup-form ::-moz-placeholder {
	/* Firefox 18- */
	color: var(--line);
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}
.sticky {

}
.bypostauthor {

}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}
