/*
	Theme Name: Ovitzia
	Theme URI: https://forty8creates.com
	Description: A custom theme based on HTML5 Blank
	Version: 1.0.0
	Author: Forty8Creates
	Author URI: https://forty8creates.com
	Tags: Blank, HTML5, CSS3

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/


/*------------------------------------*\
    CONTENTS
/*------------------------------------*\
    - Normalize
    - Flexbox
    - Main
    - Structure
	- Navigation
	- Forms
    - Buttons
    - Alignment
    - Reusable Elements
    - Language selector
    - Lists
    - SVG
    - Pages
    - Grid (the col grid system)
    - Responsive
    - Misc
    - WordPress Core
    - Slippry Base Theme
	- Test
\*------------------------------------*/

/* caveat-regular - latin */
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/caveat-v7-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Caveat Regular'), local('Caveat-Regular'),
       url('fonts/caveat-v7-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/caveat-v7-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/caveat-v7-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/caveat-v7-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/caveat-v7-latin-regular.svg#Caveat') format('svg'); /* Legacy iOS */
}

/* dm-sans-regular - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/dm-sans-v4-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('DM Sans Regular'), local('DMSans-Regular'),
       url('fonts/dm-sans-v4-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/dm-sans-v4-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/dm-sans-v4-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/dm-sans-v4-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/dm-sans-v4-latin-regular.svg#DMSans') format('svg'); /* Legacy iOS */
}

/* dm-sans-700 - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/dm-sans-v4-latin-700.eot'); /* IE9 Compat Modes */
  src: local('DM Sans Bold'), local('DMSans-Bold'),
       url('fonts/dm-sans-v4-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/dm-sans-v4-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/dm-sans-v4-latin-700.woff') format('woff'), /* Modern Browsers */
       url('fonts/dm-sans-v4-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/dm-sans-v4-latin-700.svg#DMSans') format('svg'); /* Legacy iOS */
}

/*------------------------------------*\
    Normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css
\*------------------------------------*/

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

img.lazy {
	/*width: 700px; 
	height: 467px; 
	display: block;*/
	background-color: #f5f5f5;
}
    
:root {
  --primary-color: #773fbc;
  --accent-color: #26ffc4;
  --pos-valuation-offset_desktop: 121.5px;
  --neg-valuation-offset_desktop: -121.5px;
  --mobile-nav-width-positive: 320px;
  --mobile-nav-width-negative: -320px;
}

/* Hide Recaptcha badge */
.grecaptcha-badge {
    display: none;
}

/*------------------------------------*\
    COOKIES
\*------------------------------------*/

#catapult-cookie-bar.float-accept {
    color: #AAAABB;
    left: 0;
    bottom: 2em;
    width: auto;
    background-color: #1f1f29;
    border-radius: 0 20px 20px 0;
    margin-right: 1em;
    padding: 1.5em 2.5em;
    border-left: 15px solid var(--primary-color);
    box-shadow: 0 1px 2px rgba(0,0,0,0.04), 0 2px 4px rgba(0,0,0,0.04), 0 4px 8px rgba(0,0,0,0.04), 0 8px 16px rgba(0,0,0,0.04), 0 16px 32px rgba(0,0,0,0.04), 0 32px 64px rgba(0,0,0,0.04);
}

#catapult-cookie-bar.float-accept h3 {
	color: #fff;
	margin: 0;
	font-size: 1.2em;
}

#catapult-cookie-bar.float-accept a,
#catapult-cookie-bar.float-accept:visited {
	color: #fff;
	font-weight: 700;
}

.ctcc-left-side {
	display: block;
	margin: 0.5em 0 0;
}

button#catapultCookie {
	background-color: var(--primary-color);
	background-image: url('img/svg/check-white.svg');
	background-position: right 1em center;
	background-size: 20px;
	background-repeat: no-repeat;
    color: #fff;
    padding: 1em 3.5em 1em 1.5em;
    border-radius: 50px;
    border: none;
    display: inline-block;
    cursor: pointer;
    margin-top: 1em;
    margin-left: -0.5em;
    font-weight: 700;
}

/*------------------------------------*\
    FLEXBOX
\*------------------------------------*/

.flex {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}

.align-center {
	align-items: center;
}

.align-start {
	align-items: flex-start;
}

.align-end {
	align-items: flex-end;
}

.justify-center {
	justify-content: center;
}

.justify-start {
	justify-content: start;
}

.justify-right {
	justify-content: end;
}

.wrap {
	flex-wrap: wrap;
}

[class*="col-"].wrap {
	flex-direction: column;
}

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

div.wpcf7 .ajax-loader,
div[id^='wpcf7'] label,
.more-services,
.screen-reader-response,
.wpcf7 span.wpcf7-not-valid-tip,
#showRightPush,
.button.tertiary.no-desktop {
	display: none;
}

/* global box-sizing */
*,
*:after,
*:before {
	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%;
	line-height:1.15;
	overflow-x: hidden;
}
body {
	font:400 18px/1.6 'DM Sans', -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	color:#444;
	margin:0;
	overflow-x: hidden;
	font-display: fallback; /* Set to fallback if too apparent */ 
	position: relative;
	left: 0;
}

#percentageVal {
	font-family: 'DM Sans', -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	font-weight: 700;
	color: #111;
}

header {
	position: relative;
	z-index: 1;
	display: flex;
	padding: 30px 5%
}

header :is(nav, .nav-widget) {
	flex: 1;
	display: flex;
	align-items: center;
}

.nav-widget {
	justify-content: flex-end;
	gap: 5px;
}

.small,
.has-small-font-size {
	font-size: 0.8em!important;
	font-weight: 700;
	color: #666;
}

.medium,
.has-medium-font-size {
	font-size: 1.2em!important;
}

.has-large-font-size {
	font-size: 1.5em!important;
}

.has-x-large-font-size {
	font-size: 2em!important;
}

.header .button.secondary {
	padding-right: 1.5em;
	padding-bottom: 0.875em;
}

.header .button.secondary.hollow {
	color: #444;
	border-color: #ededed;
}

#lang_choice_polylang-2 {
	border: 4px solid #fff;
	outline: 2px solid #ededed;
	border-radius: 100px;
	width: 62.55px;
	height: 62.55px;
	text-indent: -999em;
	padding: 0;
	background: url('img/uk.webp') center center no-repeat;
	background-size: cover;
	position: relative;
}

.header .button.secondary.hollow:is(:hover,:active) {
	border-color: var(--primary-color);
}

html[lang="en-GB"] #lang_choice_polylang-2 {
	background-image: url('img/uk.webp');
}

html[lang="it-IT"] #lang_choice_polylang-2 {
	background-image: url('img/it.webp');
}

html[lang="es-ES"] #lang_choice_polylang-2 {
	background-image: url('img/es.webp');
}

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

.clear:after {
    clear:both;
}
img {
	max-width:100%;
	width: 100%;
	height: auto;
	display: block;
	vertical-align:bottom;
	border-style:none;
	-ms-interpolation-mode: bicubic;
	-webkit-user-drag: none;
	-khtml-user-drag: none;
	-moz-user-drag: none;
	-o-user-drag: none;
	user-drag: none;
}

.image-crop {
	max-height: 600px;
	overflow: hidden;
}

.sy-slide.fade:before {
	display: none;
}

.fade {
	position: relative;
}

.fade:before {
	content: '';
	width: 100%;
	height: 50%;
	top: 0;
	left: 0;
	background: -moz-linear-gradient(bottom,  rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
	background: linear-gradient(to top,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
	z-index: 2;
	position: absolute;
}

.flip.fade:before {
	top: initial;
	bottom: 0;
	background: -moz-linear-gradient(top,  rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
	background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
}

.flip {
  transform: rotate(180deg);
  /* needed? not sure */
  zoom: 1;
}

a,
a:visited {
	color:var(--primary-color);
	text-decoration:none;
	background-color:transparent
}
a:hover,
a:active {
	outline:0;
	color:#773fbc;
	text-decoration:underline;
}
a:focus {
	outline:0;
}
input:focus {
	outline:0;
	border:1px solid #04A4CC;
}

a.accent,
a.accent:visited,
a.accent:hover,
a.accent:active {
	color: var(--accent-color);
}

.dark .copyright a,
.dark .copyright a:visited,
.dark .copyright a:hover,
.dark .copyright a:active {
	color: #AAAABB;
}

.fill-container {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

img.fill-container {
	object-fit: cover;
	object-position: center center;
}

a.fill-container {
	text-indent: -999em;
}

.kicker,
h1 span,
h2 span,
h3 span,
h4 span,
h5 span,
h6 span {
	color: var(--primary-color);
}

.kicker-hero {
    position: relative;
    display: block;
    top: -15px;
    margin-bottom: -15px;
}

h3 span {
	font-size: 1.75em;
	line-height: 1.5em;
}

.proposition-block h3 span {
    display: block;
    line-height: 0.5em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 700;
	color: #111;
	margin: .67em 0;
	line-height: 1.2;
	position: relative;
}

h1 {
	font-size: 3.2em;
}

h2 {
	font-size: 2em;
}

h3 {
	font-size: 1.5em;
}

h4 {
	font-size: 1em;
}

h5, h6 {
	font-size: 0.875em;
	line-height: 1.6;
}

footer h4:after {
	content: '';
	width: 50px;
	height: 2px;
	background: var(--primary-color);
	position: absolute;
    bottom: -9px;
    left: -15px;
}

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

	.header .button.secondary.hollow {
		text-indent: -999em;
		width: 66.55px;
		height: 66.55px;
		background: url('img/svg/call_24dp_5F6368_FILL1_wght400_GRAD0_opsz24.svg') center center/35px no-repeat;
	}

}

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

.logo a {
	display: block;
	width: 146.65px;
	height: 60.06px;
    background: url('img/logo-no-strapline.svg') center center no-repeat;
	background-size: cover;
	text-indent: -999999em;
	margin: 0 auto 31px;
}
/* nav */
.nav {
	overflow: hidden;
}

.nav.secondary {
	margin: 1em 0;
}

.nav ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
	display: flex;
	gap: 2em;
}
.nav li {
	display: inline-block;
}
.nav a {
	display: block;
}

main {
	margin-bottom: calc(var(--pos-valuation-offset_desktop) + 6em);
}

.footer {
	position: relative;
	color: #fff;
	background: #1f1f29; /* Old browsers */
	background: -moz-linear-gradient(top,  #1f1f29 0%, #2d2d3b 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #1f1f29 0%,#2d2d3b 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #1f1f29 0%,#2d2d3b 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.footer .bottom {
	padding-top: 7em;
}

.dark a,
.dark a:visited,
.dark a:hover,
.dark a:active {
	color: #fff;
}

.dark,
.dark .small {
	/* color: #8989a0; /* WCAG 2.0 AA */
	color: #AAAABB; /* WCAG 2.0 AAA */
}

.dark h1,
.dark h2,
.dark h3,
.dark h4,
.dark h5,
.dark h6 {
	color: #fff;
}


/*------------------------------------*\
    NAVIGATION
\*------------------------------------*/

.primary {
	font-weight: 700;
	overflow: visible;
}

.primary li {
	position: relative;
}

.primary li.current-menu-item:after {
	content: '';
	width: 4px;
	height: 18px;
	position: absolute;
	bottom: -20px;
	left: 50%;
	background-color: var(--primary-color);
	mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-size: contain;
    -webkit-mask-size: contain;
    mask-position: center center;
    -webkit-mask-position: center center;
    -webkit-mask-image: url('img/svg/3-dots.svg');
    mask-image: url('img/svg/3-dots.svg');
    transform: rotate(90deg);
}

.primary a,
.primary a:visited {
	color: #444;
}

.primary a:hover,
.primary a:active {
	color: #111;
	text-decoration: none;
}

ul[id^='menu-footer'] a,
ul[id^='menu-footer'] a:visited {
	/* color: #8989a0; /* WCAG 2.0 AA */
	color: #AAAABB; /* WCAG 2.0 AAA */
	display: inline;
}

ul[id^='menu-footer'] a:hover,
ul[id^='menu-footer'] a:active,
ul[id^='menu-footer'] .current-menu-item a {
	color: #fff;
	text-decoration: none;
}

ul[id^='menu-footer'] li {
	display: block;
}

header .tap-to-call {
	position: absolute;
    top: 19px;
    right: 2em;
}

#menu-footer,
#menu-footer-italian,
#menu-footer-spanish {
	flex-direction: column;
	gap: 0;
}


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

.wpcf7-validation-errors,
.wpcf7-mail-sent-ok {
	clear: both;
	padding-top: 1.75em;
	font-weight: 700;
	color: #ff1e1e;
}

.wpcf7-mail-sent-ok {
	color: #36c179;
}

.contact-form .wpcf7 input[type="submit"] {
	width: auto;
}

.wpcf7 span {
	position: relative;
	display: block;
}

.wpcf7 input:not([type="submit"]),
.wpcf7 textarea {
	width: 100%;
	border-radius: 5px;
}

.wpcf7 input[type="submit"] {
	width: 100%;
}

.wpcf7 textarea {
	display: block;
}

input::placeholder,
textarea::placeholder {
	color: #444;
}

select {
	cursor: pointer;
}

select:focus {
	outline: none;
}

input[type="text"],
input[type="number"],
input[type="email"],
input[type="tel"],
input[type="password"],
textarea,
select {
	padding: 23px 1em 23px 3.5em;
	border-top: 1px solid #dedede;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	border-left: 1px solid #dedede;
	-webkit-appearance: none;
    appearance: none;
    background-color: #fff;
    width: 100%;
}

span[data-name*="email"]:after + input[class*="wpcf7-not-valid"] {
	background-color: red;
}

span[data-name*="email"]:after,
span[data-name*="address"]:after,
span[data-name*="rooms"]:after,
span[data-name*="name"]:after,
span[data-name*="tel"]:after,
span[data-name*="message"]:after {
	content: '';
	width: 20px;
	height: 20px;
	position: absolute;
	top: 50%;
	margin-top: -10px;
	left: 1em;
	background-color: #999;
	mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-size: contain;
    -webkit-mask-size: contain;
    mask-position: center center;
    -webkit-mask-position: center center;
    pointer-events: none;
}

span[data-name*="rooms"]:before {
	content: '';
    width: 10px;
    height: 10px;
    position: absolute;
    top: 50%;
    margin-top: -5px;
    right: 1em;
    background-color: #999;
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-size: contain;
    -webkit-mask-size: contain;
    mask-position: center center;
    -webkit-mask-position: center center;
    pointer-events: none;
    transform: rotate(90deg);
    -webkit-mask-image: url('img/svg/play.svg');
    mask-image: url('img/svg/play.svg');
}

span[data-name*="rooms"]:hover:before {
	background-color: #666;
}

span[data-name*="email"]:after {
	-webkit-mask-image: url('img/svg/envelope.svg');
    mask-image: url('img/svg/envelope.svg');
}

span[data-name*="address"]:after {
	-webkit-mask-image: url('img/svg/location.svg');
    mask-image: url('img/svg/location.svg');
}

span[data-name*="rooms"]:after {
	-webkit-mask-image: url('img/svg/4-squares.svg');
    mask-image: url('img/svg/4-squares.svg');
}

span[data-name*="name"]:after {
	-webkit-mask-image: url('img/svg/user.svg');
    mask-image: url('img/svg/user.svg');
}

span[data-name*="tel"]:after {
	-webkit-mask-image: url('img/svg/phone.svg');
    mask-image: url('img/svg/phone.svg');
}

span[data-name*="message"]:after {
	-webkit-mask-image: url('img/svg/pen.svg');
    mask-image: url('img/svg/pen.svg');
    top: 22px;
    margin-top: 0;
}

/* Property Valuation */

.property-valuation-offset {
	overflow: visible;
	background-color: #1f1f29;
	margin-top: var(--pos-valuation-offset_desktop);
}

.property-valuation-container {
	position: relative;
    width: 100%;
    top: var(--neg-valuation-offset_desktop);
    margin-bottom: var(--neg-valuation-offset_desktop);
    padding: 0 15px;
}

.property-valuation {
	max-width: 1500px;
	margin: 0 auto;
	padding: 1.5em 7% 1em 7%;
	text-align: center;
	overflow: auto;
}

div[id^='wpcf7-f9121'],
div[id^='wpcf7-f9119'],
div[id^='wpcf7-f28'],
div[id^='wpcf7-f436'],
div[id^='wpcf7-f31'],
div[id^='wpcf7-f428'] {
	overflow: auto;
	padding: 1em 0; 
}

.grouped-fields p {
	margin: 0;
}

div[id^='wpcf7-f9121'] .grouped-fields span:nth-child(2) input,
div[id^='wpcf7-f9119'] .grouped-fields span:nth-child(2) input,
div[id^='wpcf7-f28'] .grouped-fields span:nth-child(2) input,
div[id^='wpcf7-f436'] .grouped-fields span:nth-child(2) input,
div[id^='wpcf7-f31'] .grouped-fields span:nth-child(2) input,
div[id^='wpcf7-f428'] .grouped-fields span:nth-child(2) input {
	border-radius: 5px 0 0 5px;
}

div[id^='wpcf7-f9121'] .grouped-fields span:nth-child(4) input,
div[id^='wpcf7-f9119'] .grouped-fields span:nth-child(4) input,
div[id^='wpcf7-f28'] .grouped-fields span:nth-child(4) input,
div[id^='wpcf7-f436'] .grouped-fields span:nth-child(4) input,
div[id^='wpcf7-f31'] .grouped-fields span:nth-child(4) input,
div[id^='wpcf7-f428'] .grouped-fields span:nth-child(4) input {
	border-left: none;
	border-right: none;
	border-radius: 0;
}

div[id^='wpcf7-f9121'] .grouped-fields span:nth-child(6) input,
div[id^='wpcf7-f28'] .grouped-fields span:nth-child(6) input,
div[id^='wpcf7-f436'] .grouped-fields span:nth-child(6) input {
	border-radius: 0;
	border-right: none;
}

div[id^='wpcf7-f9121'] .grouped-fields span:last-child  :is(select,input),
div[id^='wpcf7-f9119'] .grouped-fields span:last-child input,
div[id^='wpcf7-f28'] .grouped-fields span:last-child :is(select,input),
div[id^='wpcf7-f436'] .grouped-fields span:last-child  :is(select,input),
div[id^='wpcf7-f31'] .grouped-fields span:last-child input,
div[id^='wpcf7-f428'] .grouped-fields span:last-child input {
	border-radius: 0 5px 5px 0;
}

.grouped-fields {
	overflow: auto;
	float: left;
	width: 75%;
	padding-right: 1em;
}

.grouped-fields span {
	width: 33.33%;
	float: left;
	position: relative;
}

.grouped-fields + p {
	margin: 0;
	float: left;
	width: 25%;
	position: relative;
}

div[id^='wpcf7-f9121'] .grouped-fields,
div[id^='wpcf7-f28'] .grouped-fields,
div[id^='wpcf7-f436'] .grouped-fields {
	width: calc(100% - 100px);
}

div[id^='wpcf7-f9121'] .grouped-fields span,
div[id^='wpcf7-f28'] .grouped-fields span,
div[id^='wpcf7-f436'] .grouped-fields span {
	width: 25%;
}

div[id^='wpcf7-f9121'] .grouped-fields + p,
div[id^='wpcf7-f28'] .grouped-fields + p,
div[id^='wpcf7-f436'] .grouped-fields + p {
	width: 100px;
}

div[id^='wpcf7-f28'] input[type="submit"],
div[id^='wpcf7-f436'] input[type="submit"],
div[id^='wpcf7-f9121'] input[type="submit"] {
	text-indent: -999em;
	position: relative;
	background-color: var(--primary-color); 
	background-image: url('img/svg/arrow-white.svg');
	background-position: center center;
	background-size: 20px;
	background-repeat: no-repeat;
}

div[id^='wpcf7-f9121'] input[type="submit"]:hover,
div[id^='wpcf7-f28'] input[type="submit"]:hover,
div[id^='wpcf7-f436'] input[type="submit"]:hover,
div[id^='wpcf7-f9121'] input[type="submit"]:active,
div[id^='wpcf7-f28'] input[type="submit"]:active,
div[id^='wpcf7-f436'] input[type="submit"]:active {
	background-color: #6937a6;
}

input[type="text"].wpcf7-not-valid,
input[type="number"].wpcf7-not-valid,
input[type="email"].wpcf7-not-valid,
input[type="tel"].wpcf7-not-valid,
textarea.wpcf7-not-valid,
select.wpcf7-not-valid {
	background-color: #ffd8d8;
}

/* Request Call Back */

.call-back-request {
	background-color: #1f1f29;
	background-size: cover;
	color: #fff;
	text-align: center;
	position: relative;
	padding: 12em 15px;
}

.call-back-request .row {
	z-index: 2;
}

.call-back-request h2 {
	color: #fff;
	margin: 12.8px 0 0.2em;
}

.call-back-request p span {
	color: var(--accent-color);
	font-weight: 700;
}

.call-back-request .small {
	color: #aaa;
}

.call-back-request .small a {
	color: #fff;
}

/*------------------------------------*\
    BUTTONS
\*------------------------------------*/

.button {
	text-align: center;
	font-weight: 700;
	position: relative;
	z-index: 1;
}

.button i,
div[id^='wpcf7-f28'] input[type="submit"]:before,
div[id^='wpcf7-f436'] input[type="submit"]:before {
	content: '';
	position: absolute;
	width: 20px;
	height: 20px;
	background-color: #fff;
	right: 1.5em;
	-webkit-mask-image: url('img/svg/forward-arrow.svg');
	mask-image: url('img/svg/forward-arrow.svg');
	top: 50%;
	margin-top: -10px;
}

#moreservices_button i {
	-webkit-mask-image: url('img/svg/plus.svg');
	mask-image: url('img/svg/plus.svg');
}

.button.primary,
.button.primary:visited,
input[type="submit"],
button {
	cursor: pointer;
	background: var(--primary-color);
	font-weight: 700;
	color: #fff;
	padding: 1.5em;
	border-radius: 5px;
	border: none;
	-webkit-appearance: none;
   	appearance: none;
}

.button.primary:hover,
.button.primary:active,
input[type="submit"]:hover,
input[type="submit"]:active {
	background-color: #6937a6;
}

.button.secondary,
.button.secondary:visited {
	background-color: var(--primary-color);
	color: #fff;
	padding: 1em 3.5em 1em 1.5em;
	border-radius: 50px;
	border: none;
	display: inline-block;
	cursor: pointer;
}

.button.secondary:hover,
.button.secondary:active {
	background-color: #6937a6;
	text-decoration: none;
}

.button.secondary.no-icon {
	padding: 0.5em 1em;
}

.button.secondary.hollow {
	background-color: transparent;
	border: 2px solid var(--primary-color);
}

.button.secondary.hollow:hover {
	border-color: var(--accent-color);
}

.button.tertiary,
.button.tertiary:visited {
	color: var(--accent-color);
	padding: 0.5em 0;
	border-bottom: 2px solid var(--primary-color);
	display: inline-block;
	cursor: pointer;
}

.button.tertiary:hover,
.button.tertiary:active {
	border-bottom: 2px solid var(--accent-color);
	text-decoration: none;
}

.button.tap-to-call,
.button.tap-to-call:visited {
	background-color: #111;
	color: #fff;
}

.button.tap-to-call:hover,
.button.tap-to-call:active {
	background-color: var(--primary-color);
	color: #fff;
}

.wp-block-button__link,
.wp-block-button__link:visited,
pre a:is(:link, :visited) {
	font-size: 1em;
	color: #fff;
	font-weight: 700;
	background-color: var(--primary-color);
	text-decoration: none;
	text-shadow: none!important;
	border-radius: 100px;
	padding: calc(.667em + 2px) calc(1.333em + 2px);
	font-family: 'DM Sans', -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	display: inline-block;
}

.wp-block-button__link:is(:hover,:active),
pre a:is(:hover, :active) {
	background-color: #6937a6;
	color: #fff;
	text-decoration: none;
}

pre:has(a) {
	padding-top: 20px;
	display: flex;
    gap: 5px;
    flex-wrap: wrap;
}

/*------------------------------------*\
    ALIGNMENTS
\*------------------------------------*/

.hero + .property-valuation-offset .contact-local {
	display: none;
}

.hero + .property-valuation-offset {
	padding-bottom: 8em;
}

.contact-local {
	text-align: center;
	color: #fff;
	padding: 4em 0;
}

.contact-local span {
	font-size: 1.5em;
	font-weight: 700;
	padding: 0 0.5em;
}

.value-proposition {
	padding-bottom: 9em;
}

.value-proposition h2 {
	max-width: 700px;
	text-align: center;
	padding: 2em 15px;
}

.hero h1 {
	max-width: 800px;
	text-align: center;
	padding: 0 15px;
}

.hero.content-left h1 {
	text-align: left;
}

.intro {
	max-width: 700px;
	text-align: center;
	margin: 0 auto 4em;
	padding: 0 15px;
}

.hero .link-container {
	text-align: center;
	position: relative;
	bottom: -70px;
	margin-top: -70px;
}

.featured-services.row {
	text-align: center;
	overflow: hidden;
}

.testimonials-section h2 {
	max-width: 650px;
	text-align: center;
	position: relative;
	padding-top: 100px;
}

.testimonials-section h2:before {
	content:'';
	width: 200px;
	height: 70px;
	background-color: var(--primary-color);
	-webkit-mask-image: url(img/svg/5-stars.svg);
    mask-image: url(img/svg/5-stars.svg);
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-size: contain;
    -webkit-mask-size: contain;
    mask-position: center center;
    -webkit-mask-position: center center;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -100px;
}

.testimonials-section {
	padding: 6em 15px 3em;
}

#faq {
	margin-bottom: 6em;
}

#faq h2,
.our-partners h2 {
	max-width: 1100px;
	text-align: center;
	padding: 3em 15px 0;
}

.page-template-template-contact main {
	margin-bottom: -8em;
}

.page-template-template-contact .image-crop {
	max-height: 900px;
}

/*------------------------------------*\
    REUSABLE ELEMENTS
\*------------------------------------*/

.notice {
	padding: 1em;
	background-color: var(--primary-color);
	color: #fff;
	text-align: center;
}

.notice a,
.notice a:visited,
.notice a:hover,
.notice a:active {
	color: #fff;
}

.under-nav {
    top: -115px;
    position: relative;
    margin-bottom: calc(-8em + -115px);
    padding-top: 140px;
    padding-bottom: calc(8em + 115px);
    overflow: hidden;
}

.under-nav:before {
	content: '';
	background-color: #fff;
	width: 50%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.under-nav:after {
	content: '';
	width: 300px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 50%;
	background: -moz-linear-gradient(right, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
    background: -webkit-linear-gradient(right, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
    background: linear-gradient(to left, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
}

.content-left {
	background-size: contain;
    background-repeat: no-repeat;
    background-position: right bottom;
}

.content-left .content-block {
	max-width: 600px;
}

.grey-fade {
	position: relative;
}

.grey-fade:after {
	content:'';
	width: 100%;
	height: 300px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#f8f8f8+0,ffffff+100 */
	background: #f5f5f5; /* Old browsers */
	background: -moz-linear-gradient(top,  #f5f5f5 0%, #ffffff 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #f5f5f5 0%,#ffffff 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #f5f5f5 0%,#ffffff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.card {
	background-color: #fff;
	border-radius: 5px;
	box-shadow: 0 1px 2px rgba(0,0,0,0.07), 
                0 2px 4px rgba(0,0,0,0.07), 
                0 4px 8px rgba(0,0,0,0.07), 
                0 8px 16px rgba(0,0,0,0.07),
                0 16px 32px rgba(0,0,0,0.07), 
                0 32px 64px rgba(0,0,0,0.07);
}

.featured-services .row,
.our-partners .row {
	padding: 3em 2em 4.5em;
}

.featured-services .col-4,
.our-partners .col-4 {
	padding: 0.5em;
}

.featured-services .button {
	margin-top: 3.5em;
}

.featured-services .card {
	height: 100%;
	flex-direction: row;
	align-items: center;
    -ms-flex-align: center;
    -webkit-box-align: center;
    padding: 1.5em;
    box-shadow: 0 1px 2px rgba(0,0,0,0.04), 
                0 2px 4px rgba(0,0,0,0.04), 
                0 4px 8px rgba(0,0,0,0.04), 
                0 8px 16px rgba(0,0,0,0.04),
                0 16px 32px rgba(0,0,0,0.04), 
                0 32px 64px rgba(0,0,0,0.04);
}

.featured-services .card h3 {
	font-size: 1em;
	text-align: center;
	width: calc(100% - 110px);
}

.icon-container {
	width: 55px;
	height: 55px;
	border-radius: 100%;
	background-color: var(--primary-color);
	margin-top: 9.3px;
}

.featured-services .icon-container {
	margin-top: 0;
}

.icon-container .service-icon {
    background-color: #fff;
    width: 25px;
    height: 25px;
}

.featured-services .image-crop {
	max-height: 600px;
	overflow: hidden;
	border-radius: 200px 200px 0 0;
	position: relative;
	top: -68px;
	margin-bottom: -68px;
}

.carousel-image {
	height: 500px;
	background-size: cover;
	border-radius: 500px;
	position:relative;
	z-index: 1;
}

.carousel-image:before {
	content: '';
	width: 100%;
	height: 50%;
	bottom: 0;
	left: 0;
	background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 100%);
	background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);
	background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);
	position: absolute;
	border-radius: 0 0 500px 500px;
}

.carousel-image:after {
	content: '';
	width: 82%;
	height: 55%;
	bottom: -25%;
	right: 0;
	background-color: #fff;
	position: absolute;
	border-radius: 500px 0 0 0;
}

.carousel-content {
	position: relative;
	z-index: 2;
	width: 72%;
    float: right;
    top: -6em;
}

.carousel-content .service-icon {
	width: 80px;
    height: 80px;
	margin-right: 3.5em;
    margin-top: 4.3em;
	mask-position: center top;
    -webkit-mask-position: center top;
    background-color: #ccc;
}

.carousel-content .inner {
	max-width: 600px;
}

.popular-services {
	padding: 0 15px;
}

.popular-services .sy-pager {
	text-align: right;
	position: absolute;
	z-index: 3;
	top: 300px;
	right: 50px; 
}

#popular-services header {
	display: block;
	padding: 0;
}

#popular-services .sy-pager {
    text-align: right;
    position: absolute;
    z-index: 3;
    top: 300px;
    right: 50px;
}

#popular-services .kicker {
	font-size: 0.875em;
	font-weight: 600;
    text-transform: uppercase;
    -webkit-text-stroke: 0.5px var(--primary-color);
    letter-spacing: 1px;
}

#popular-services h3 {
	margin-top: 0;
}

.popular-services .sy-controls li.sy-next {
	right: -90px;
}

.popular-services .sy-controls li.sy-prev {
	left: -90px;
}

.popular-services .sy-controls li a:before,
.popular-services .sy-controls li a:after {
	top: 250px;
}

/* Select all in the left column */
.service-list .col-4:nth-child(3n+1) {
	padding: 15px 70px 2.5em 15px;
}
/* Select all in the middle column */
.service-list .col-4:nth-child(3n+2) {
	padding: 15px 42.5px 2.5em;
}
/* Select all in the right column */
.service-list .col-4:nth-child(3n+3) {
	padding: 15px 15px 2.5em 70px;
}

.service-list h4 {
	margin: 0.67em 0;
}

.service-list .flex-grid:after {
	content: '';
	width: 100%;
	height: 300px;
	bottom: 0;
	left: 0;
	background: -moz-linear-gradient(top,  rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 50%,rgba(255,255,255,1) 100%);
	background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 50%,rgba(255,255,255,1) 100%);
	position: absolute;
}

.service-list.bg-dark .flex-grid:after {
	background: -moz-linear-gradient(top,  rgba(31,31,41,0) 0%, rgba(31,31,41,1) 50%, rgba(31,31,41,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(31,31,41,0) 0%,rgba(31,31,41,1) 50%,rgba(31,31,41,1) 100%);
	background: linear-gradient(to bottom,  rgba(31,31,41,0) 0%,rgba(31,31,41,1) 50%,rgba(31,31,41,1) 100%);
}

.service-list:not(:has(#more-services)) .flex-grid:after,
.service-list:not(:has(#more-services)) .button-container {
	display: none;
}

.more-services {
	position: relative;
	z-index: 1;
	padding-bottom: 5em;
}

.button-container {
	text-align: center;
	top: -10em;
}

.testimonial-carousel,
.testimonial-carousel:before,
.testimonial-carousel:after {
	max-width: 600px;
	padding: 2em 4em;
    text-align: center;
    margin: 4em auto;
    border-radius: 5px;
    background: rgb(255,255,255);
	background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(248,248,248,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(248,248,248,1) 100%);
	background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(248,248,248,1) 100%);
	position: relative;
}

.testimonial-carousel:before,
.testimonial-carousel:after {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	bottom: 0;
	margin-bottom: 0;
}

.testimonial-carousel:before {
	left: -666px;
}

.testimonial-carousel:after {
	right: -666px;
}

.headshot {
	width: 200px;
	height: 200px;
	border-radius: 200px;
	margin: 0 auto;
	position: relative;
	background: #f5f5f5 url(img/svg/placeholder.svg) center left 65%/95px no-repeat;
	overflow: visible;
}

.headshot img {
	overflow: hidden;
	border-radius: 200px;
	height: 100%;
    background: transparent;
    text-indent: -999em;
}

.headshot:before {
	content: '';
	width: 65px;
	height: 20px;
	background-color: #fff;
	position: absolute;
	bottom: -8.5px;
	left: 50%;
	margin-left: -32.5px;
	-webkit-mask-image: url('img/svg/star.svg');
    mask-image: url('img/svg/star.svg');
    mask-repeat: repeat-x;
    -webkit-mask-repeat: repeat-x;
    mask-size: 13px;
    -webkit-mask-size: 13px;
    mask-position: center center;
    -webkit-mask-position: center center;
    z-index: 2;
}

.headshot:after {
	content: '';
	width: 100px;
	height: 20px;
	background-color: var(--primary-color);
	border-radius: 100px;
	position: absolute;
	bottom: -10px;
	left: 50%;
	margin-left: -50px;
}

.testimonial-carousel h3 {
	font-size: 1em;
	color: #444;
	margin: 2em auto;
}

.via {
	color: #999;
}

.testimonial-carousel .sy-pager {
	position: absolute;
    left: 0;
    bottom: -3em;
}

.company-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	justify-content: center;
	max-width: calc(1330px + 5%);
	margin: 0 auto;
	padding: 41px 5%;
}

.company-stats .statistic {
	flex: 1 0 200px;
}

.company-stats .statistic :is(h1,h2,h3,h4,h5,h6) {
	margin-bottom: 0;
	margin-top: 16px;
}

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

	.company-stats {
		font-size: 0.6em;
		gap: 0;
	}
	.company-stats .statistic {
		flex: 1 0 50%;
	}
}

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

	.featured-services .card {
		flex-direction: column;
	}

	.featured-services .card h3 {
		width: 100%;
	}

}

/*------------------------------------*\
    AIRBNB WIDGET
\*------------------------------------*/

.airbnb-stats {
	display: flex;
    justify-content: flex-end;
}

.airbnb-widget {
	background-color: #fff;
	padding-right: 32px;
	height: 229px;
	width: 342px;
	border: 1px solid rgba(0,0,0,0.04);
	border-radius: 24px;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
	display: flex;
	gap: 24px;
	color: #000!important;
	justify-content: space-between;
}

.airbnb-widget .profile {
	display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
	flex-grow: 1;
	gap: 8px;
}

.airbnb-widget .avatar {
	width: 104px;
	height: 104px;
	border-radius: 100px;
	background-color: #ededed;
	position: relative;
}

.airbnb-widget .avatar img {
	border-radius: 100px;
}

.airbnb-widget .verified {
	width: 32px;
	height: 32px;
	border-radius: 100px;
	position: absolute;
	bottom: 4px;
	right: -4px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.16);
	background: url(img/svg/airbnb-shield.svg) center center/13px no-repeat, linear-gradient(to right, #E61E4D 0%, #E31C5F 50%, #D70466 100%);;
}

.airbnb-widget .name {
	display: flex;
    flex-direction: column;
    align-items: center;
}

.airbnb-widget h1 {
	margin: 0 auto;
	font-size: 31.9px;
	line-height: 36.2799px;
}

.airbnb-widget .superhost {
	font-size: 14px;
	font-weight: 600;
	padding-left: 16px;
	background: url(img/svg/airbnb-medal.svg) left 1.875px center/8.25px no-repeat;
}

.airbnb-widget ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
	line-height: 1;
	width: 96px;
	display: flex;
    flex-direction: column;
    justify-content: center;
}

.airbnb-widget ul li:nth-child(2) {
	margin: 12px 0;
	padding: 12px 0;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}

.airbnb-widget ul h2 {
	margin: 0;
	font-size: 22px;
}

.airbnb-widget ul h2.rating {
	padding-right: 16px;
	background: url(img/svg/airbnb-star.svg) right 0.73px center/12.54px no-repeat;
	display: inline-block;
}

.airbnb-widget ul span {
	font-size: 10px;
	font-weight: 600;
}

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

	.airbnb-widget {
		width: 300px;
		padding-right: 20px;
	}

}

/*------------------------------------*\
    TAB & ACCORDION
\*------------------------------------*/


.tabs {
	padding: 4em 2em;
}

.tablinks {
	cursor: pointer;
	padding: 1em 2em;
}

.tablinks h3 {
	font-size: 1em;
	margin-bottom: 0;
}

.tablinks p {
	margin: 0.4em 0 0;
}

.tablinks.active {
	background-color: var(--primary-color);
}

.tablinks.active h3 {
	color: #fff;
}

.tablinks.active p {
	color: #000;
	opacity: 0.5;
}

.tablinks.active .service-icon {
	background-color: #fff;
}

.tabcontent {
	display: none;
	padding: 0 2em;
}

/* Accordion */

.accordion {
	font-size: 1.2em;
	font-weight: 700;
	color: #111;
	line-height: 1.2;
	cursor: pointer;
	padding: 1.5em 3em 1.5em 16px;
	width: 100%;
	text-align: left;
	border-right: none;
	border-bottom: none;
	border-left: none;
	outline: none;
	position: relative;
	background: transparent;
	user-select: none;
}

.bg-dark details {
	border-color: #373744;
}

.bg-dark summary {
	color: #fff;
}

details {
	border-top: 2px solid #f8f8f8;
}

details:nth-child(2) {
	border-top: none;
}

.accordion i {
	position: absolute;
	width: 20px;
	height: 20px;
	background-color: var(--primary-color);
	right: 0.5em;
	-webkit-mask-image: url('img/svg/plus-circle.svg');
	mask-image: url('img/svg/plus-circle.svg');
	top: 50%;
	margin-top: -10px;
}

.accordion.active i {
	background-color: #b2b2b2;
	-webkit-mask-image: url('img/svg/minus-circle.svg');
	mask-image: url('img/svg/minus-circle.svg');
}

.active, .accordion:hover,
details[open] summary {
	color: var(--primary-color);
}

.panel {
	padding: 0 16px;
    display: none;
    overflow: hidden;
    margin-bottom: 1.25em;
    margin-top: -1.25em;
}

.active + .panel {
	display: block;
}

.two-columns {
	padding: 5%;
}

.two-columns .wrapper-medium {
	display: flex;
	gap: 60px;
}

.two-columns .content {
	flex: 1;
	display: flex;
	width: 100%;
}

.two-columns .content .inner {
	flex: 1;
}

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

	.two-columns .wrapper-medium {
		flex-direction: column;
	}

}

/*------------------------------------*\
    LANGUAGE SELECTOR
\*------------------------------------*/

.lang-select {
	position: relative;
	clear: both;
	padding-top: 3em;
}

#lang_choice_1 {
	width: 200px;
	background: #1f1f29;
	color: #fff;
	border: none;
	border-radius: 5px;
}

.lang-select:after {
	content: '';
	width: 20px;
	height: 20px;
	position: absolute;
	top: calc(50% + 1.5em);
	left: 20px;
	margin-top: -10px;
	background: url('img/svg/location-white.svg') center center no-repeat;
	background-size: contain;
}

/*------------------------------------*\
    LISTS
\*------------------------------------*/

.agents {
	list-style-type: none;
	padding: 0;
	margin: 0;
	text-align: center;
}

.agents a {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
}

.social-channels {
	padding: 0;
	list-style-type: none;
}

.social-channels li {
	display: inline-block;
	width: 40px;
	height: 40px;
	border: 2px solid var(--primary-color);
	border-radius: 40px;
	margin-right: 0.5em;
	position: relative;
}

.social-channels li:hover {
	background-color: var(--primary-color);
}

.social-channels a {
	position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    text-indent: -999em;
    background-color: #fff;
	mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-size: 20px;
    -webkit-mask-size: 20px;
    mask-position: center center;
    -webkit-mask-position: center center;
}

.sponsors {
	list-style-type: none;
    padding: 0;
    margin: 0;
    text-align: center;
}

.sponsors li {
    background-color: #fff;
    display: inline-block;
    width: 100px;
    height: 25px;
    margin: 2em 1em;
    position: relative;
}

/*------------------------------------*\
    SVG
\*------------------------------------*/

.agents li,
.service-icon,
.button i,
.partner-logo {
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: contain;
	-webkit-mask-size: contain;
	mask-position: center center;
	-webkit-mask-position: center center;
}

.agents li {
	background-color: #fff;
	display: inline-block;
    width: 100px;
    height: 25px;
    margin: 2em 1em;
    position: relative;
}

.service-icon {
	background-color: var(--primary-color);
	width: 30px;
	height: 30px;
}

.tablinks i {
	display: block;
	width:20px;
	height:20px;
}

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

.page-template-template-contact .hero h1,
.page-template-template-contact #faq h2:first-child {
	margin-inline: auto;
}

.our-partners .col-4 {
	height: 200px;
}

.our-partners .card {
	height: 100%;
	position: relative;
}

.our-partners .card:hover {
	background-color: var(--primary-color);
}
.our-partners .card:hover .partner-logo {
	background-color: #fff;
}

.our-partners .intro {
	margin-bottom: 0;
}

.our-partners a {
	text-indent: -999em;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.partner-logo {
	background-color: #111;
	width: 50%;
    height: 50%;
    text-indent: -999em;
}

.commission-container {
	padding-bottom: 32%;
	background-size: cover;
	background-position: center bottom;
	background-repeat: no-repeat;
}

.commission-container:after {
    content: '';
    width: 100%;
    background: #fff;
    position: absolute;
    top: 0;
    left: 0;
    height: 100px;
}

.commission-container:before {
	top: 100px;
}

.commission-box {
    padding: 2em 4em 3em;
    text-align: center;
    max-width: 550px;
    margin: 0 7%;
    z-index: 3;
}

.commission-box .button {
	margin-top: 1em;
}

.commission-value {
	font-size: 6em;
	margin: 0;
}

.proposition-container.row {
	overflow: hidden;
}

.proposition-container .image-block {
	max-width: 41.66%;
	width: 100%;
	margin-right: 6em;
}

.proposition-container .image-crop {
	border-radius: 0 600px 600px 0;
}

.proposition-block {
	padding-right: 7%;
	margin: 3em auto;
	width: 100%;
}

.proposition-container:nth-child(odd) .image-block {
	order: 2;
	margin-right: 0;
	margin-left: 6em;
}

.proposition-container:nth-child(odd) .image-crop {
	border-radius: 600px 0 0 600px;
}

.proposition-container:nth-child(odd) .proposition-block {
	padding-right: 0;
	padding-left: 7%;
}

.proposition-container:nth-child(odd) .inner {
	float: right;
}

.proposition-block .inner {
	max-width: 450px;
}

.contact-options {
	padding-bottom: 3em;
}

.contact-method:first-child {
	margin-top: 1em;
}

.contact-method p {
	font-weight: 700;
	margin: 1.5em;
}

.contact-method .icon-container .service-icon {
	width: 20px;
	height: 20px;
}

.rounded-block {
	padding: 5%;
	margin: 0 3%;
	border-radius: 80px;
	color: #fff;
	background: #23232E;
	position: relative;
	min-height: 600px;
}

.rounded-block.has-overlay img.hero-bg {
	opacity: 0.4;
}

.rounded-block :is(.wrapper-medium,.wrapper-large) {
	display: flex;
	gap: 30px;
	align-items: center;
}

.rounded-block :is(.wrapper-medium,.wrapper-large).packages {
	gap: 5%;
	align-items: stretch;
	justify-content: center;
}

.rounded-block :is(.content-block, .airbnb-stats) {
	flex: 1;
}

.rounded-block .content-block {
	text-shadow: 0px 3px 20px rgba(0,0,0,0.82);
}

.rounded-block .content-block h1 {
	color: #fff;
	margin-top: 0;
}

.package {
	color: #949499;
	max-width: 30%;
	position: relative;
}

.package:not(:last-child, :only-child):before {
	content: '';
    width: 1px;
    height: 100%;
    background: #373744;
    position: absolute;
    right: -8.5%;
    top: 0;
}

.package :is(h1,h2,h3,h4,h5,h6) {
	color: #fff;
}

.package :is(h1,h2) {
	margin-top: 0;
}

.package h3 {
	margin-top: 2.5em;
}

.package p:has(+ h2) {
	font-weight: 700;
	font-size: 1.5em;
	margin: 0;
}

.package ul {
	list-style-type: none;
	display: flex;
	gap: 30px;
	flex-direction: column;
	padding-inline-start: 45px;
	margin-top: 2em;
}

.package li {
	position: relative;
}

.package li:before {
	content: '';
	width: 35px;
	height: 35px;
	border-radius: 100px;
	background: var(--primary-color) url('img/check.svg') center center/20px no-repeat;
	top: -3.1px;
	left: -45px;
	position: absolute;
}

.page-template-template-estimate :is(header, footer, #property-valuation, .notice) {
	display: none;
}

.page-template-template-estimate {
	background-color: #1f1f29;
	color: #fff;
}

.page-template-template-estimate :is(h1,h2,h3,h4,h5,h6) {
	color: #fff;
}

.page-template-template-estimate main {
	margin-bottom: 0;
}

.page-template-template-estimate .signup-block {
	height: 100vh;
	padding: 5%;
	text-align: center;
}

.page-template-template-estimate .wrapper-medium {
	display: flex;
	align-items: center;;
}

.page-template-template-estimate h1 {
	margin-top: 0;
}

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

	.rounded-block.hero-block .wrapper-medium,
	.rounded-block :is(.wrapper-medium,.wrapper-large) {
		flex-direction: column;
	}

	.rounded-block.hero-block .content-block {
		text-align: center;
	}

	.hero-block .wp-block-buttons-is-layout-flex,
	.hero-block pre:has(a) {
		justify-content: center;
	}

	.rounded-block :is(.wrapper-medium,.wrapper-large) {
		gap: 60px!important;
	}

	.package {
		max-width: 100%;
	}

	.package:not(:last-child, :only-child):before {
		width: 100%;
		height: 1px;
		right: unset;
		top: unset;
		bottom: -30px;
		left: 0;
	}

	.package h3 {
		margin-top: 1.5em;
	}

}

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

	.rounded-block {
		border-radius: 40px;
	}

}

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

	.rounded-block .content-block h1 {
		font-size: 2.5em;
	}

	.rounded-block.hero-block {
		border-radius: 0;
		margin: 0;
	}

}

/*------------------------------------*\
    GRID
\*------------------------------------*/

/* wrapper */
.wrapper-medium {
	max-width:1330px;
	margin:0 auto;
	position:relative;
}

.wrapper-small {
	max-width:900px;
	margin:0 auto;
	position:relative;
}

.row {box-sizing: border-box; overflow: auto;}

[class*="col-"] {float: left; padding: 15px; position: relative;}

.col-1 	{width: 8.33%;}
.col-2 	{width: 16.66%;}
.col-3 	{width: 25%;}
.col-4 	{width: 33.33%;}
.col-5 	{width: 41.66%;}
.col-6 	{width: 50%;}
.col-7 	{width: 58.33%;}
.col-8 	{width: 66.66%;}
.col-9 	{width: 74.5%;}
.col-10 {width: 83.33%;}
.col-11 {width: 91.66%;}
.col-12 {width: 100%;}


/*------------------------------------*\
    BOOKING/LOGIN
\*------------------------------------*/

.iframe-container {
	max-width: 700px;
	padding: 3em;
	margin: 0 auto;
	background: var(--primary-color);
	color: #fff;
	border-radius: 5px;
}

.iframe-container button {
	background-color: #111;
}

.iframe-container input[type="text"],
.iframe-container input[type="password"] {
	padding-left: 1em;
}

.iframe-container label {
	font-size: 0.875em;
	font-weight: 700;
	margin-top: 0.5em;
	display: block;
	opacity: 0.5;
}

/*------------------------------------*\
    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}.gallery-caption,.wp-caption .wp-caption-text{font-size:11px;line-height:17px;margin:0;padding:0 4px 5px}

/*------------------------------------*\
    GUTENBERG
\*------------------------------------*/

.featured-image,
.fallback-logo {
	aspect-ratio: 4 / 3;
	background-color: #f5f5f5;
	border-radius: 8px 8px 0 0;
}

.fallback-logo {
    width: 100%;
    background: #f5f5f5 url(img/missing-image.gif) center center no-repeat;
    background-size: 200px;
}

.post-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin: 0 auto;
    max-width: 1200px;
	padding-top: 5%;
}

.post-grid .post {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
	position: relative;
	overflow: hidden;
}

.post-grid .post .inner {
	padding: 1em;
}

.post-grid .post h2 {
	font-size: 1.2em;
	margin-top: 0;
}

.archive-description {
	text-align: center;
}

.archive-description p {
	font-size: 1.2em;
}

.wrapper-medium.with-padding.pagination-container {
    padding-top: 0;
}

.pagination-container {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
	margin-top: 5%;
}

.pagination-container .select-container {
    margin-left: auto;
}

.pagination-container .select-container select {
    margin-bottom: 0;
}

.pagination {
    display: flex;
    align-items: center;
    font-weight: 700;
}

.pagination .page-numbers {
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid transparent;
    border-radius: 5px;
    margin-right: 2px;
}

.pagination .page-numbers.current {
    border-color: #111;
}

.pagination a.page-numbers,
.pagination a.page-numbers:visited {
    color: var(--text-dark);
    text-decoration: none;
}

.pagination a.page-numbers:is(:hover,:active) {
    background-color: #f5f5f5;
}

.pagination a.page-numbers:is(.next,.prev) {
    text-indent: -999em;
    background-image: url('img/svg/chevron-right.svg');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.pagination a.page-numbers.prev {
    background-image: url('img/svg/chevron-left.svg');
}

.single-post article {
    max-width: calc(680px + 10%);
    width: 100%;
    margin: 3em auto;
    padding: 0 5%;
	overflow: auto;
}

.article-feature {
    aspect-ratio: 4 / 3;
    border-radius: 10px;
    object-fit: cover;
    width: 100%;
    margin: 1em 0;
}

.single-post article h1:first-child {
    margin-bottom: 0;
}

.single-post article :is(ul,ol) li {
    margin-bottom: 0.5em;
}

.single-post article img {
	border-radius: 8px;
    box-shadow: 0px 0px 0px 10px rgba(242, 244, 248, 1);
	margin: calc(1em + 10px) auto;
}

@media (max-width: 768px) {
    .post-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media only screen and (max-width: 700px) {
    .pagination-container {
        flex-direction: column;
        align-items: center;
    }

    .pagination-container .select-container {
        margin-left: unset;
        margin-top: 5%;
    }

    .pagination .page-numbers:last-child {
        margin-right: 0;
    }
}

@media (max-width: 480px) {
    .post-grid {
        grid-template-columns: 1fr;
    }
}



/*------------------------------------*\
    SLIPPRY BASE THEME
\*------------------------------------*/

.sy-slides-wrap{position:relative;height:100%;width:100%}.sy-slides-wrap:hover .sy-controls{display:block}.sy-slides-crop{height:100%;width:100%;position:absolute;overflow:hidden}.sy-list{width:100%;height:100%;list-style:none;margin:0;padding:0;position:absolute}.sy-list.horizontal{transition:left ease}.sy-list.vertical{transition:top ease}.sy-slide{position:absolute;width:100%;z-index:2}.sy-slide.kenburns{width:140%;left:-20%}.sy-slide.kenburns.useCSS{transition-property:opacity}.sy-slide.kenburns.useCSS.sy-ken:nth-child(1n){animation-name:left-right;animation-fill-mode:forwards}.sy-slide.kenburns.useCSS.sy-ken:nth-child(2n){animation-name:right-left;animation-fill-mode:forwards}.sy-slide.sy-active{z-index:3}.sy-slide>img{margin:0;padding:0;display:block;width:100%;border:0}.sy-slide>a{margin:0;padding:0;display:block;width:100%}.sy-slide>a>img{margin:0;padding:0;display:block;width:100%;border:0}.sy-controls{display:block;list-style:none;height:100%;width:100%;position:absolute;padding:0;margin:0}.sy-controls li{position:absolute;width:60px;height:100%;z-index:33}.sy-controls li.sy-prev{left:-12em;top:0;transform:scaleX(-1)}.sy-controls li.sy-next{right:-12em;top:0}.sy-controls li a{position:relative;width:100%;height:100%;display:block;text-indent:-9999px}.sy-controls li a:link,.sy-controls li a:visited{opacity:1}.sy-controls li a:focus,.sy-controls li a:hover{opacity:.8;outline:0}.sy-controls li a:before{content:"";text-align:center;text-indent:0;line-height:2.8em;color:#111;font-weight:800;position:absolute;background-color:var(--primary-color);width:60px;height:60px;top:50%;margin-top:-1.4em;left:0;border-radius:50%}.sy-controls li a:after{content:"";position:absolute;background-color:#fff;width:20px;height:20px;top:50%;margin-top:-5px;left:50%;margin-left:-10px;-webkit-mask-image:url(img/svg/forward-arrow.svg);mask-image:url(img/svg/forward-arrow.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;mask-size:contain;-webkit-mask-size:contain;mask-position:center center;-webkit-mask-position:center center}@media only screen and (max-device-width:600px){.sy-controls{display:block}.sy-controls li{min-width:2.1em}.sy-controls li a:after{width:1.4em;height:1.4em;margin-top:-.7em;margin-left:-.7em}}.sy-caption-wrap{position:absolute;bottom:2em;z-index:12;left:50%}.sy-caption-wrap .sy-caption{position:relative;left:-50%;background-color:rgba(0,0,0,.54);color:#fff;padding:.4em 1em;border-radius:1.2em}.sy-caption-wrap .sy-caption a:link,.sy-caption-wrap .sy-caption a:visited{color:#e24b70;font-weight:600;text-decoration:none}.sy-caption-wrap .sy-caption a:focus,.sy-caption-wrap .sy-caption a:hover{text-decoration:underline}@media only screen and (max-device-width:600px),screen and (max-width:600px){.sy-caption-wrap{left:0;bottom:.4em}.sy-caption-wrap .sy-caption{left:0;padding:.2em .4em;font-size:.92em;border-radius:0}}.sy-pager{clear:both;display:block;width:100%;margin:1em 0 0;padding:0;list-style:none}.sy-pager li{display:inline-block;max-width:10%;width:60px;height:6px;margin:0 .5em 0 0;border-radius:20px;overflow:hidden}.sy-pager li.sy-active a{background-color:var(--primary-color)}.sy-pager li a{width:100%;height:100%;display:block;background-color:rgba(0,0,0,.1);padding:1em}.light .sy-pager li a{background-color:rgba(255,255,255,.3)}.light .sy-pager li.sy-active a{background-color:#fff}.sy-filler{width:100%}.sy-filler.ready{transition:padding .6s ease}

/*------------------------------------*\
    PAGE BUILDER
\*------------------------------------*/

.single-layout,
.featured-layout,
.services-layout,
.faq-layout,
.archive-layout {
	padding: 5%;
}

.carousel-layout {
	padding: 5% 0;
}

.no-padding {
	padding: 0!important;
}

.bg-dark {
	background-color: #1f1f29;
	color: #cacadb;
}

.bg-dark :is(h1,h2,h3,h4,h5,h6) {
	color: #fff;
}

.bg-dark a:is(:link,:visited) {
	color: var(--accent-color);
}

.bg-dark.grey-fade:after {
	background: linear-gradient(to bottom, #2d2d3b 0%, #2d2d3b 100%);
}

.has-bg-image {
	position: relative;
}

.restricted-width {
	max-width: 881.01px;
	width: 100%;
}

.faq-layout .medium-width {
	width: 100%;
}

/* SINGLE COLUMN */

.single-layout .medium-width,
.single-layout .full-width {
	width: 100%;
}

.single-layout .full-width p:has(> img),
.single-layout .full-width p img {
	margin: 0;
	user-select: none;
	pointer-events: none;
}

/* FLIP GRID */

.flip-layout.value-proposition {
	padding: 5% 0;
}

/* FAQ */

.answer {
	padding: 0 16px;
    overflow: hidden;
    margin-bottom: 1.25em;
    margin-top: -1.25em;
}


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

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

	footer .wrapper-medium {
		padding: 0 7%;
	}
	
	.service-list .wrapper-medium {
		padding: 0 3.5%;
	}
	
	.featured-services .image-crop {
		margin: 0 15px;
	}

}

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

	.notice {
		background-color: #1f1f29;
	}
	
	.notice a, 
	.notice a:visited, 
	.notice a:hover, 
	.notice a:active {
		color: var(--accent-color);
	}
	
	.page-template-default article,
	.error404 article {
		padding-top: 19px;
	}
	
	.button.tertiary.no-desktop {
		display: inline-block;
	}
	
	header {
		z-index: 10;
	}
	
	.logo {
		position: static;
		margin: 0 auto;
	}
	
	#showRightPush {
		display: block;
		-webkit-appearance: none;
		position: fixed;
		right: 5%;
		bottom: 20px;
		width: 66.55px;
		height: 66.55px;
		z-index: 1001;
		cursor: pointer;
	}
	
	.hero.under-nav {
		padding-top: 109px;
		top: -90px;
	}
	
	.hero {
		padding-top: 19px;
	}
	
	.grouped-fields,
	div[id^='wpcf7-f9121'] .grouped-fields,
	div[id^='wpcf7-f28'] .grouped-fields,
	div[id^='wpcf7-f436'] .grouped-fields {
		width: 100%;
		padding-right: 0;
		float: none;
	}
	
	.grouped-fields + p,
	div[id^='wpcf7-f9121'] .grouped-fields + p,
	div[id^='wpcf7-f28'] .grouped-fields + p,
	div[id^='wpcf7-f436'] .grouped-fields + p {
		float: none;
		width: auto;
		margin-top: 1em;
	}
	
	div[id^='wpcf7-f9121'] .grouped-fields span,
	div[id^='wpcf7-f28'] .grouped-fields span,
	div[id^='wpcf7-f436'] .grouped-fields span {
		width: 50%;
	}
	
	div[id^='wpcf7-f9121'] .grouped-fields span:nth-child(2)  :is(select,input),
	div[id^='wpcf7-f28'] .grouped-fields span:nth-child(2)  :is(select,input),
	div[id^='wpcf7-f436'] .grouped-fields span:nth-child(2)  :is(select,input) {
		border-bottom: none;
		border-radius: 5px 0 0 0;
	}
	
	div[id^='wpcf7-f9121'] .grouped-fields span:nth-child(4)  :is(select,input),
	div[id^='wpcf7-f28'] .grouped-fields span:nth-child(4)  :is(select,input),
	div[id^='wpcf7-f436'] .grouped-fields span:nth-child(4)  :is(select,input) {
		border-right: 1px solid #dedede;
		border-radius: 0 5px 0 0;
		border-bottom: none;
	}
	
	div[id^='wpcf7-f9121'] .grouped-fields span:nth-child(6)  :is(select,input),
	div[id^='wpcf7-f28'] .grouped-fields span:nth-child(6)  :is(select,input),
	div[id^='wpcf7-f436'] .grouped-fields span:nth-child(6)  :is(select,input) {
		border-right: 1px solid #dedede;
		border-radius: 0 0 0 5px;
	}
	
	div[id^='wpcf7-f9121'] .grouped-fields span:last-child  :is(select,input),
	div[id^='wpcf7-f28'] .grouped-fields span:last-child  :is(select,input),
	div[id^='wpcf7-f436'] .grouped-fields span:last-child  :is(select,input) {
		border-left: none;
		border-radius: 0 0 5px 0;
	}
	
	div[id^='wpcf7-f9121'] input[type="submit"],
	div[id^='wpcf7-f28'] input[type="submit"],
	div[id^='wpcf7-f436'] input[type="submit"] {
		text-indent: 0;
		background-image: none;
	}
	
	.call-back-request .row {
		max-width: calc(885.81px + 14%);
		padding: 0 7%;
		width: 100%;
	}
	
	footer .col-4 {
		width: 50%;
	}

	footer .col-4.widget {
		width: 100%;
	}

	.sy-controls li.sy-next {
		right: -6em;
	}
	
	.sy-controls li.sy-prev {
		left: -6em;
	}
	
	.service-list .col-4:nth-child(3n+1) {
		padding-right: 40px;
	}
	.service-list .col-4:nth-child(3n+2) {
		padding-left: 20px;
		padding-right: 20px;
	}
	.service-list .col-4:nth-child(3n+3) {
		padding-left: 40px;
	}
	
	.popular-services {
		padding: 0;
	}

	.carousel-image,
	.carousel-image:before {
		border-radius: 0;
	}
	
	.carousel-image:after {
		width: 95%;
	}
	
	.carousel-content {
		width: 80%;
	}
	
	.carousel-content .inner {
		padding-right: 7%;
	}
	
	.tabs .col-3 {
		width: 50%;
	}
	
	.content-left {
		background-size: cover;
	}
	
	.featured-services .col-4 {
		width: 50%;
		padding: 15px;
	}
	
	.cbp-spmenu {
		background-color: #1f1f29;
		position: fixed;
		margin: 0;
		color: #aaaabb;
	}
	
	.cbp-spmenu.nav ul {
		margin: 3em 0;
		flex-direction: column;
		width: 100%;
		text-align: center;
	}
	
	header .button.tap-to-call,
	header .button.tap-to-call:visited {
		position: static;
		background-color: transparent;
    	border: 2px solid var(--primary-color);
	}
	
	header .button.tap-to-call:hover,
	header .button.tap-to-call:active {
		border-color: var(--accent-color);
		background-color: transparent;
	}
	
	.primary li {
		padding: 1em;
		display: block;
	}

	.primary a,
	.primary a:visited {
		color: #aaaabb;
	}

	.primary a:hover,
	.primary a:active,
	.primary li.current-menu-item a {
		color: #fff;
	}
	
	.primary li.current-menu-item:after {
		bottom: -5px;
	}
	
	.cbp-spmenu-vertical {
		width: var(--mobile-nav-width-positive);
		height: 100%;
		top: 0;
		z-index: 1000;
	}

	.cbp-spmenu-right {
		right: var(--mobile-nav-width-negative);
	}

	.cbp-spmenu-right.cbp-spmenu-open {
		right: 0px;
	}
	
	.cbp-spmenu,
	.cbp-spmenu-push {
		transition: all 0.3s ease;
	}
	
	body.cbp-spmenu-push-toleft {
		left: var(--mobile-nav-width-negative);
	}
	
	.hamburger {
		padding: 3px 0 0;
		transition-property: opacity, filter;
		transition-duration: 0.15s;
		transition-timing-function: linear;
		background-color: transparent;
		border: 0;
		margin: 0;
		overflow: visible;
		background-color: var(--primary-color);
		border-radius: 100%;
	}
	.hamburger:hover {
		background-color: #6937a6; 
	}

	.hamburger.is-active:hover {
		background-color: #6937a6;
	}
	.hamburger.is-active .hamburger-inner,
	.hamburger.is-active .hamburger-inner::before,
	.hamburger.is-active .hamburger-inner::after {
		background-color: #fff;
	}

	.hamburger-box {
		width: 25px;
		height: 19px;
		display: inline-block;
		position: relative; 
	}

	.hamburger-inner {
		display: block;
		top: 50%;
		margin-top: -2px; 
	}
	.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
		width: 25px;
		height: 3px;
		background-color: #fff;
		border-radius: 4px;
		position: absolute;
		transition-property: transform;
		transition-duration: 0.15s;
		transition-timing-function: ease; 
	}
	.hamburger-inner::before, .hamburger-inner::after {
		content: "";
		display: block; 
	}
	.hamburger-inner::before {
		top: -8px; 
	}
	.hamburger-inner::after {
		bottom: -8px; 
	}
	
	.hamburger--spin .hamburger-inner {
		transition-duration: 0.22s;
		transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); 
	}
	.hamburger--spin .hamburger-inner::before {
		transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; 
	}
	.hamburger--spin .hamburger-inner::after {
		transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
	}

	.hamburger--spin.is-active .hamburger-inner {
		transform: rotate(225deg);
		transition-delay: 0.12s;
		transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); 
	}
	.hamburger--spin.is-active .hamburger-inner::before {
		top: 0;
		opacity: 0;
		transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; 
	}
	.hamburger--spin.is-active .hamburger-inner::after {
		bottom: 0;
		transform: rotate(-90deg);
		transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); 
	}

	.header {
		padding: 0.95px 5% 0;
	}

}

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

	.service-list .col-4:nth-child(3n+1),
	.service-list .col-4:nth-child(3n+2),
	.service-list .col-4:nth-child(3n+3) {
		padding: 0 0 2.5em 0;
		width: 50%;
	}
	
	.service-list .col-4:nth-child(odd) {
		padding-right: 5%;
	}
	
	.service-list .col-4:nth-child(even) {
		padding-left: 5%;
	}

}

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

	.grouped-fields span,
	div[id^='wpcf7-f9121'] .grouped-fields span,
	div[id^='wpcf7-f28'] .grouped-fields span,
	div[id^='wpcf7-f436'] .grouped-fields span {
		float: none;
		width: 100%;
	}
	
	div[id^='wpcf7-f9121'] .grouped-fields span:last-child  :is(select,input), 
	div[id^='wpcf7-f28'] .grouped-fields span:last-child  :is(select,input), 
	div[id^='wpcf7-f436'] .grouped-fields span:last-child  :is(select,input), 
	div[id^='wpcf7-f31'] .grouped-fields span:last-child  :is(select,input),
	div[id^='wpcf7-f428'] .grouped-fields span:last-child  :is(select,input),
	div[id^='wpcf7-f9119'] .grouped-fields span:last-child  :is(select,input) {
		border-radius: 0 0 5px 5px;
	}
	
	div[id^='wpcf7-f9121'] .grouped-fields span:nth-child(2)  :is(select,input),
	div[id^='wpcf7-f28'] .grouped-fields span:nth-child(2)  :is(select,input),
	div[id^='wpcf7-f436'] .grouped-fields span:nth-child(2)  :is(select,input),
	div[id^='wpcf7-f31'] .grouped-fields span:nth-child(2)  :is(select,input),
	div[id^='wpcf7-f428'] .grouped-fields span:nth-child(2)  :is(select,input),
	div[id^='wpcf7-f9119'] .grouped-fields span:nth-child(2)  :is(select,input) {
		border-radius: 5px 5px 0 0;
	}
	
	div[id^='wpcf7-f9121'] .grouped-fields span:nth-child(4)  :is(select,input), 
	div[id^='wpcf7-f28'] .grouped-fields span:nth-child(4)  :is(select,input), 
	div[id^='wpcf7-f436'] .grouped-fields span:nth-child(4)  :is(select,input), 
	div[id^='wpcf7-f31'] .grouped-fields span:nth-child(4)  :is(select,input),
	div[id^='wpcf7-f428'] .grouped-fields span:nth-child(4)  :is(select,input),
	div[id^='wpcf7-f9119'] .grouped-fields span:nth-child(4)  :is(select,input) {
		border-top: none;
		border-right: 1px solid #dedede;
		border-bottom: none;
		border-left: 1px solid #dedede
	}
	
	div[id^='wpcf7-f9121'] .grouped-fields span:nth-child(2)  :is(select,input),
	div[id^='wpcf7-f28'] .grouped-fields span:nth-child(2)  :is(select,input),
	div[id^='wpcf7-f436'] .grouped-fields span:nth-child(2)  :is(select,input) {
		border-bottom: 1px solid #dedede;
		border-radius: 5px 5px 0 0;
	}
	
	div[id^='wpcf7-f9121'] .grouped-fields span:nth-child(4)  :is(select,input),
	div[id^='wpcf7-f28'] .grouped-fields span:nth-child(4)  :is(select,input),
	div[id^='wpcf7-f436'] .grouped-fields span:nth-child(4)  :is(select,input),
	div[id^='wpcf7-f9121'] .grouped-fields span:nth-child(6)  :is(select,input),
	div[id^='wpcf7-f28'] .grouped-fields span:nth-child(6)  :is(select,input),
	div[id^='wpcf7-f436'] .grouped-fields span:nth-child(6)  :is(select,input) {
		border-right: 1px solid #dedede;
		border-radius: 0;
		border-bottom: none;
	}
	
	div[id^='wpcf7-f9121'] .grouped-fields span:last-child  :is(select,input),
	div[id^='wpcf7-f28'] .grouped-fields span:last-child  :is(select,input),
	div[id^='wpcf7-f436'] .grouped-fields span:last-child  :is(select,input) {
		border-left: 1px solid #dedede;
		border-radius: 0 0 5px 5px;
	}
	
	.call-back-request {
		padding: 6em 15px;
	}
	
	.testimonials-section {
		padding: 3em 15px 0;
	}
	
	.button-container {
		margin-bottom: -5em;
	}
	
	.service-list .wrapper-medium:after {
		height: 290px;
	}
	
	.more-services {
		padding-bottom: 1em;
	}
	
	.our-partners .col-4 {
		padding: 15px;
	}

}

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

	h1 {
		font-size: 3em;
	}
	h2 {
		font-size: 2em;
	}
	h3 {
		font-size: 1.5em;
	}
	
	.carousel-image {
		height: 400px;
	}
	
	.popular-services .sy-pager {
		top: 225px;
		right: 20px;
	}
	
	.sy-controls li.sy-next,
	.sy-controls li.sy-prev,
	.agents li:nth-child(n+5) {
		display: none;
	}
	
	.contact-local {
		padding-top: 1em;
	}
	
	.contact-local span {
		display: block;
		padding: 1em 0.5em;
	}
	
	.contact-local .button.tertiary {
		padding-top: 0;
	}
	
	.carousel-content {
		top: -5em;
	}
	
	.contact-options .col-6 {
		width: 100%;
		padding: 15px 7%;
	}
	
	.contact-method {
		flex-direction: column;
		text-align: center;
		align-items: center;
		-ms-flex-align: center;
		-webkit-box-align: center;
	}
	
	.icon-container {
		width: 55px;
		height: 55px;
	}
	
	.call-back-request {
		padding: 4.5em 15px;
	}
	
	.page-template-template-contact .hero .intro {
		margin-bottom: 1em;
	}
	
	.tabs {
		padding: 1em 2em 4em;
	}
	
	.featured-services .image-crop {
		margin: 0;
		border-radius: 0;
	}
	
	.proposition-container .image-block {
		max-width: 100%;
	}
	
	.proposition-container {
		flex-direction: column;
	}
	
	.proposition-container:nth-child(odd) .proposition-block {
		order: 2;
	}
	
	.proposition-block,
	.proposition-container:nth-child(odd) .proposition-block {
		padding: 0 7%;
		margin: 3em auto;
		max-width: 600px
	}
	
	.value-proposition {
		padding-bottom: 2em;
	}

}

@media only screen and (max-width: 700px) {
	
	.featured-services .col-4 {
		width: 100%;
		max-width: 400px;
	}
	
	.our-partners .col-4 {
		width: 50%;
	}
}

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

	.header .nav-widget .button.secondary {
		display: none;
	}

}

@media only screen and (max-width: 600px) {
	
	.image-crop {
		max-height: 300px;
	}
	
	main {
		margin-bottom: 0;
	}
	
	.agents li:nth-child(n+4) {
		display: none;
	}
	
	.testimonial-carousel {
		padding: 2em 7%;
	}
	
	.service-list .col-4:nth-child(3n+1),
	.service-list .col-4:nth-child(3n+2),
	.service-list .col-4:nth-child(3n+3) {
		width: 100%;
	}
	
	.service-list .col-4:nth-child(odd),
	.service-list .col-4:nth-child(even) {
		padding-right: 5%;
		padding-left: 5%;
	}
	
	.carousel-content {
		float: none;
		top: -3em;
		flex-direction: column;
		width: 100%;
		margin: 0 auto;
		padding: 0 7%;
		max-width: 500px;
	}
	
	.carousel-content .service-icon {
		margin-top: 1em;
		width: 60px;
		height: 60px;
	}
	
	.inner {
		padding-right: 0;
	}
	
	.carousel-image:before {
		height: 40%;
	}
	
	.carousel-image:after {
	    border-radius: 100px 0 0 0;
	    width: 97%;
	    bottom: -35%;
	}
	
	.popular-services .sy-pager {
		top: 260px;
	}
	
	.accordion {
		font-size: 1em;
		line-height: 1.6;
	}
	
	.accordion i {
		width: 20px;
		height: 20px;
		margin-top: -10px;
	}
	
	.tabcontent {
		padding: 0 1em;
	}
	
	.tabs .col-3 {
		width: 100%;
		padding: 0.5em 0;
	}
	
	.property-valuation-container {
		top: -2em;
		margin-bottom: -2em;
	}
	
	.content-left {
		background-size: contain;
	}
	
	.hero.under-nav {
		padding-bottom: 56.25%;
	}
	
	.under-nav:before {
		width: 100%;
		height: 60%;
	}
	
	.under-nav:after {
		width: 100%;
		height: 40%;
		background: -moz-linear-gradient(bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
		background: -webkit-linear-gradient(bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
		background: linear-gradient(to top, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
		top: 60%;
		left: 0;
	}
	
}

@media only screen and (max-width: 550px) {
	.carousel-image:after {
		left: 0;
		border-radius: 0 100px 0 0;
	}
	.popular-services .sy-pager {
		text-align: left;
		left: 20px;
	}
	.commission-box {
		padding: 2em 2em 3em;
    }
    
    .our-partners .col-4 {
		height: 150px;
	}
}

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

	footer .col-4,
	.contact-form .wpcf7 input[type="submit"] {
		width: 100%;
	}
	
	.agents li {
		margin: 2em 0.5em;
	}
	
	.content-block {
		padding: 0;
	}
	
	.cbp-spmenu-vertical {
		width: 100vw;
	}

	.cbp-spmenu-right {
		right: -100vw;
	}
	
	body.cbp-spmenu-push-toleft {
		left: -100vw;
	}

}


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

.no-select {
	user-select: none;
}

::selection {
	background:var(--primary-color);
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:var(--primary-color);
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:var(--primary-color);
	color:#FFF;
	text-shadow:none;
}

/*------------------------------------*\
    CREDITS
\*------------------------------------*/

/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#1f1f29+0,2d2d3b+100 */