@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');


/*** GENERIC CSS ***/
html,body {
    font-weight: 400;
    font-family: 'Fakt';
}

@font-face {
    font-family: 'FontAwesome';
    src: url('../fonts/fontawesome-webfont.eot');
    src: url('../fonts/fontawesome-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/fontawesome-webfont.woff2') format('woff2'),
         url('../fonts/fontawesome-webfont.woff') format('woff'),
         url('../fonts/fontawesome-webfont.ttf') format('truetype'),
         url('../fonts/fontawesome-webfont.svg#fontawesome-webfont') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'RoxboroughCFRegular';
    src: url('../fonts/RoxboroughCFRegular.eot');
    src: url('../fonts/RoxboroughCFRegular.eot') format('embedded-opentype'),
         url('../fonts/RoxboroughCFRegular.woff2') format('woff2'),
         url('../fonts/RoxboroughCFRegular.woff') format('woff'),
         url('../fonts/RoxboroughCFRegular.ttf') format('truetype'),
         url('../fonts/RoxboroughCFRegular.svg#RoxboroughCFRegular') format('svg');
}

@font-face {
    font-family: 'Fakt';
    src: url('../fonts/FaktNormal.eot');
    src: url('../fonts/FaktNormal.eot') format('embedded-opentype'),
         url('../fonts/FaktNormal.woff2') format('woff2'),
         url('../fonts/FaktNormal.woff') format('woff'),
         url('../fonts/FaktNormal.ttf') format('truetype'),
         url('../fonts/FaktNormal.svg#FaktNormal') format('svg');
    font-weight: 400;
}

@font-face {
    font-family: 'Fakt';
    src: url('../fonts/FaktBlond.eot');
    src: url('../fonts/FaktBlond.eot') format('embedded-opentype'),
         url('../fonts/FaktBlond.woff2') format('woff2'),
         url('../fonts/FaktBlond.woff') format('woff'),
         url('../fonts/FaktBlond.ttf') format('truetype'),
         url('../fonts/FaktBlond.svg#FaktBlond') format('svg');
    font-weight: 300;
}

@font-face {
    font-family: 'Fakt';
    src: url('../fonts/FaktSemiBold.eot');
    src: url('../fonts/FaktSemiBold.eot') format('embedded-opentype'),
         url('../fonts/FaktSemiBold.woff2') format('woff2'),
         url('../fonts/FaktSemiBold.woff') format('woff'),
         url('../fonts/FaktSemiBold.ttf') format('truetype'),
         url('../fonts/FaktSemiBold.svg#FaktSemiBold') format('svg');
    font-weight: 600;
}

@font-face {
    font-family: 'RoxboroughCFRegular';
    src: url('../fonts/RoxboroughCFRegular.eot');
    src: url('../fonts/RoxboroughCFRegular.eot') format('embedded-opentype'),
         url('../fonts/RoxboroughCFRegular.woff2') format('woff2'),
         url('../fonts/RoxboroughCFRegular.woff') format('woff'),
         url('../fonts/RoxboroughCFRegular.ttf') format('truetype'),
         url('../fonts/RoxboroughCFRegular.svg#RoxboroughCFRegular') format('svg');
}

@font-face {
    font-family: 'RoxboroughThin';
    src: url('../fonts/RoxboroughThin.eot');
    src: url('../fonts/RoxboroughThin.eot') format('embedded-opentype'),
         url('../fonts/RoxboroughThin.woff2') format('woff2'),
         url('../fonts/RoxboroughThin.woff') format('woff'),
         url('../fonts/RoxboroughThin.ttf') format('truetype'),
         url('../fonts/RoxboroughThin.svg#RoxboroughThin') format('svg');
}

body {
    font-size: 16px;
    background: #fff;
    color: #000;
}

a {
    -webkit-transition: all ease 0.5s;
    transition: all ease 0.5s;
    text-decoration: none;
    color: #000;
    cursor: pointer;
}

a i {
    -webkit-transition: all ease 0.5s;
    transition: all ease 0.5s;
}

a:hover {
    text-decoration: none;
    color: #000;
}

a:focus {
    text-decoration: none;
}

button {
    outline: 0 !important;
    -webkit-box-shadow: none;
            box-shadow: none;
    border: none;
    -webkit-transition: all ease 0.5s;
    transition: all ease 0.5s;
    cursor: pointer;
}

button:focus {
    -webkit-box-shadow: none;
            box-shadow: none;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    color:#000;
    font-weight: 400;
    /* font-family: 'RoxboroughCFRegular'; */
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
}

h1 {
    font-size:54px;
    line-height: 1.5;
}

h2 {
    font-size: 48px;
    line-height: 1.4;
}

h3 {
    font-size:25px;
    line-height: 1.5;
}

h4 {
    font-size:27px;
    line-height: 1.5;
}

h5 {
    font-size:24px;
    line-height: 1.5;
}

p {
    font-size: 16px;
    margin-bottom: 15px;
    line-height: 1.8;
}

p:last-child {
    margin-bottom: 0;
}

img {
    max-width: 100%;
    height: auto;
}

.section-title h6 {
    font-size: 18px;
    text-transform: uppercase;
    color: #454545;
    letter-spacing: 12px;
    border-bottom: solid 1px #cccccc;
    margin-bottom: 12px;
}

.section-title h6 span {
    display: inline-block;
    position: relative;
    padding: 0 0 16px;
}

.section-title h6 span:after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 1px;
    background: #454545;
}

.section-title.white h6,
.section-title.white h2,
.section-title.white p {
    color: #fff;
}

.section-title h2 {
    font-size: 55px;
    letter-spacing: 15px;
    text-transform: uppercase;
    font-weight: 700;
    color: #000;
    margin-top: 0px;
    margin-bottom: 25px;
    line-height: 1.1;
    font-family: "Open Sans", sans-serif;
}

.section-title h2 span {
    font-weight: 400;
}

.btn-default {
    display: inline-block;
    min-width: 155px;
    color: #000;
    height: 55px;
    position: relative;
    padding: 0px 20px;
    padding-left: 30px;
    line-height: 53px;
    font-family: 'Fakt';
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    transition: all .3s;
    background: none;
    text-align: center;
    letter-spacing: 2.5px;
    border: solid 1px #c1c1c1;
    /* width: 220px; */
    vertical-align: top;
}

.btn-default i {
    margin-left: 5px;
}

.btn-default::after {
    content: '';
    position: absolute;
    top: 10px;
    left: 10px;
    width: 3px;
    height: 100%;
    background: #000;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}


.btn-default::before {
    content: '';
    width: 63px;
    height: 53px;
    background: url(../img/logo-a-black.png) center center no-repeat;
    background-size: contain;
    position: absolute;
    top: 10px;
    left: -41px;
}

.btn-default.white:before {
    background: url(../img/logo-a.png) center center no-repeat;
    background-size: contain;
}

.btn-default::after {
    content: '';
    position: absolute;
    top: 12px;
    left: -9px;
    width: 0px;
    height: 91%;
    height: 48px;
    background: #000;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
    clip-path: polygon(0px 0, 100% 0, 100% 100%, 26px 100%, 0 0%);
}

.btn-default:hover:after {
    width: 108%;
}

.btn-default span {
    position: relative;
    z-index: 2;
}

.btn-default:hover {
    padding-top: 12px;
    padding-left: 40px;
}

.btn-default:hover span {
    color: #fff;
}

.btn-default.white {
    border-color: #fff;
    color: #fff;
}

.btn-default.white::after {
    background: #fff;
}

.btn-default.white:hover,
.btn-default.white.active {
    border-color: #fff;
    color: #000;
}

.btn-default.white.active {
    padding-top: 12px;
    padding-left: 40px;
}

.btn-default.white.active span,
.btn-default.white:hover span {
    color: #000;
}

.btn-default.white.active::after {
    width: 100%;
}

/*** SIDEMENU ***/
.menu-btn {
    min-width: 20px;
    min-height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    font-size: 12px;
    font-weight: 500;
    margin-left: 40px;
    justify-content: end;
    text-align: right;
}

.menu-btn span {
    display: block;
    width: 100%;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    background: #fff !important;
    height: 2px;
    margin: 6px 0px;
    border-radius: 0px;
    transition: all .3s;
    margin-left: auto;
}

.menu-btn:hover span {
    width: 100% !important;
}

.menu-btn div {
    position: relative;
    top: 0px;
    vertical-align: middle;
    width: 26px;
}

.side-menu {
    background: #fff;
	position:fixed;
	top:0px;
    left: -100%;
    width: 340px;
	-webkit-transition: all 0.3s;
    transition: all 0.3s;
	height:100%;
	z-index:9999999;
    padding: 55px 35px;
	overflow:hidden;
	overflow-y:auto;
    box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.15);
}

.side-menu.intro {
	left:0px;
}

.side-menu ul.main-menu {
	padding-left:0px;
	margin-top:30px;
}

.side-menu ul.main-menu.navbar-nav li {
	list-style:none;
	display:inline-block;
	width:100%;
    margin: 0;
    margin-bottom: 10px;
}

.side-menu ul.main-menu li>a {
    display: inline-block;
    width: 100%;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #000;
    font-size: 17px;
    padding: 7px 0px;
    -webkit-transition: 0.2s all ease;
    transition: 0.2s all ease;
    font-weight: 400;
    border-bottom: 1px solid transparent;
}

.side-menu ul.main-menu>li:hover>a,
.side-menu ul.main-menu>li.active>a {
	background:none;
    color:#000;
    border-color: #000;
}

.side-menu a.CloseBtn {
    float: right;
    color: #fff;
    background: #000;
    font-size: 22px;
    margin: 0;
    position: relative;
    z-index: 99;
    cursor: pointer;
    position: absolute;
    top: 0;
    right: 0;
    min-width: 40px;
    min-height: 40px;
    border-radius: 0px 0px 0px 5px;
}

.side-menu a.CloseBtn:before,
.side-menu a.CloseBtn:after {
    content: '';
    display: block;
    width: 15px;
    height: 2px;
    background-color: currentColor;
    position: absolute;
    left: 50%;
    top: 50%;
}

.side-menu a.CloseBtn:before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    -moz-transform: translate(-50%, -50%) rotate(45deg);
    -ms-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg);
}

.side-menu a.CloseBtn:after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -moz-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg);
}

.side-menu .menu-item-has-children {
    cursor: pointer;
}

.side-menu .menu-item-has-children>a {
    pointer-events: none;
    cursor: pointer;
    position: relative;
}

.side-menu .menu-item-has-children:hover>a,
.side-menu .menu-item-has-children.active>a {
    color: #000 !important;
}

.side-menu .menu-item-has-children>a:after {
    content: '';
    width: 25px;
    height: 25px;
    background: #000;
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
    top: 50%;
    transform: translate(0px, -50%);
}

.side-menu .menu-item-has-children>a:before {
    position: absolute;
    top: 0;
    right: 0;
    color: #fff;
    font-size: 27px;
    z-index: 99;
    top: 51%;
    transform: translate(0px, -50%);
    right: 6px;
    content: "\f067";
    display: inline-block;
    font: normal normal normal 14px / 1 FontAwesome;
}

.side-menu .menu-item-has-children.current>a:before {
    content: "\f068";
}

.side-menu ul.navbar-nav>li.menu-item-has-children ul.sub-menu {
    opacity: 1;
    visibility: visible !important;
    position: relative !important;
    left: 0 !important;
    -webkit-transform: translateY(0) !important;
    -ms-transform: translateY(0) !important;
    transform: translateY(0) !important;
    background: #fff;
    border: none;
    border-radius: 0;
    padding: 0px 0px !important;
    display: none !important;
    top: 0 !important;
}

.side-menu ul.navbar-nav>li.current ul.sub-menu {
    display: block !important;
    pointer-events: auto;
}

.side-menu ul.navbar-nav>li>ul.sub-menu>li {
    margin: 0;
}

.side-menu ul.navbar-nav>li>ul.sub-menu>li a {
    display: inline-block;
    width: 100%;
    font-size: 13px;
    background: #ebebeb;
    color: #000;
    margin: 0;
    padding: 10px 15px !important;
}

.side-menu ul.navbar-nav>li>ul.sub-menu>li:hover a,
.side-menu ul.navbar-nav>li>ul.sub-menu>li.current_page_item>a,
.side-menu ul.navbar-nav>li>ul.sub-menu>li.active>a {
    color: #fff !important;
    background: #000 !important;
}

.side-menu ul li.current ul.sub-menu {
    display: block !important;
    pointer-events: auto;
}


.contact-details {
    list-style: none;
    margin: 0px;
    padding: 0px;
    color: #000;
}

.contact-details li {
    justify-content: center;
    padding: 0px;
    border: none;
    margin-bottom: 15px;
}

.contact-details li a {
    display: inline-block;
    display: flex;
    max-width: max-content;
    align-items: start;
    font-family: 'Fakt';
    padding: 0;
    font-size: 17px;
    font-weight: 400;
    position: relative;
    color: #000;
}

.contact-details li a:hover {
    color: #fff;
    opacity: .6;
}

.contact-details .fa {
    min-width: 30px;
    height: 30px;
    line-height: 30px;
    font-size: 14px;
    color: #fff;
    background: #000;
    border-radius: 50%;
    text-align: center;
    margin-right: 10px;
}

.contact-details li a {
}

.contact-details li a:hover {
    color: #000;
}

.contact-details li a:hover .fa {
    color: #fff;
}

.side-menu .social-links li {
    margin: 0px 5px 10px 0px;
}

.side-menu h4 {
    color: #000;
    font-weight: 500;
    font-size: 22px;
    margin-top: 15px;
}

/*** HEADER ***/
header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 99;
    transition: all .3s;
    padding: 0px 15px;
}

header .main-nav {
    padding: 35px 0px;
}

header.fixed .main-nav {
    padding: 15px 0px;
}

header.fixed {
    position: fixed;
    background: #fff !important;
    z-index: 999;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .2);
}

header .navbar-brand img {
    max-height: 60px;
    transition: all .3s;
}

header .navbar-brand img.mainlogo {
    display: none;
}

header.fixed .navbar-brand img {
    max-height: 40px;
    filter: none;
    display: none;
}

header.fixed .navbar-brand img.mainlogo {
    display: inline-block;
}

header.fixed .menu-btn span {
    background: #000 !important;
}

header.fixed .navbar-brand img {
}

header.home-header .navbar-brand {
    display: none;
    opacity: 0;
    pointer-events: none;
}

header.home-header.fixed .navbar-brand {
    display: inline-block;
    opacity: 1;
    pointer-events: auto;
}

.navbar-brand {
    padding: 0px !important;
}

.navbar-brand img {
    transition: all .3s;
    max-height: 30px;
}

.navbar {
	padding:0px 0px;
}

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

.navbar-nav .nav-item {
	position:relative;
}

.navbar-light .navbar-nav>.nav-item {
    margin-left: 20px;
	display:inline-block;
    vertical-align: top;
}

.navbar-light .navbar-nav>.nav-item>.nav-link.dropdown-toggle:after {
    font-size: 15px;
}

.navbar-light .navbar-nav>.nav-item>.nav-link {
    position: relative;
    color: #fff;
    font-size: 14px;
    line-height: 40px;
    padding-bottom: 5px;
    transition: all .3s;
    font-weight: 500;
    padding: 0px 0px !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-family: 'Fakt';
}

.navbar-light .navbar-nav>.nav-item>.nav-link::before {
    content: '';
    position: absolute;
    bottom: 0px;
    left: 0;
    right: 0;
    width: 0%;
    opacity: 0;
    height: 100%;
    border-top: solid 1px #fff;
    border-bottom: solid 1px #fff;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    margin: auto;
    pointer-events: none;
}

.navbar-light .navbar-nav>.nav-item:hover>.nav-link::before,
.navbar-light .navbar-nav>.nav-item.active>.nav-link::before {
    opacity: .6;
    width: 100%;
}

header.fixed .navbar-light .navbar-nav>.nav-item>.nav-link {
    color: #000;
}

header.fixed .navbar-light .navbar-nav>.nav-item:hover>.nav-link,
header.fixed .navbar-light .navbar-nav>.nav-item.active>.nav-link {
	color:#000 !important;
}

header.fixed .navbar-light .navbar-nav>.nav-item>.nav-link::before {
    border-color: #000;
}

header.fixed .navbar-light .navbar-nav>.nav-item {
    margin-left: 15px;
}

header.fixed .navbar-nav.menu-right {
    border-left: 1px solid rgba(0,0,0, 0.4);
}

.navbar-light .navbar-nav>.nav-item:hover>.nav-link,
.navbar-light .navbar-nav>.nav-item.active>.nav-link {
	color:#fff!important;
}

.navbar-light .navbar-nav>.nav-item ul.sub-menu {
    border: none;
    border-radius: 0px !important;
    text-align: left;
    display: block;
    list-style: none;
    margin: 0;
    position: absolute;
    overflow: hidden;
    left: calc(50% - 100px);
    min-width: 180px;
    padding: 0px;
    padding-top: 10px;
    background: none !important;
    opacity: 0px;
    visibility: hidden;
    pointer-events: none;
    -webkit-transform: translateY(15px);
    -ms-transform: translateY(15px);
    transform: translateY(15px);
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
    box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
    box-shadow: none;
    white-space: nowrap;
}

.navbar-light .navbar-nav>.nav-item:hover ul.sub-menu {
	display:block;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.navbar-light .navbar-nav>.nav-item ul.sub-menu>li {
	width:100%;
    position: relative;
    margin-bottom: 1px;
}

.navbar-light .navbar-nav>.nav-item ul.sub-menu>li:last-child {
    border: none;
}

.navbar-light .navbar-nav>.nav-item ul.sub-menu>li>.nav-link {
    transition: all .3s;
    display: inline-block;
    clear: both;
    margin: 0px;
	width:100%;
	position:relative;
    line-height: 40px;
    padding: 0px 18px !important;
    font-size: 14px;
    border: none;
    white-space: nowrap;
    letter-spacing: 2px;
    color: #fff;
    background: rgba(0,0,0,0.5);
    text-transform: uppercase;
    font-weight: 500;
    text-align: center;
    font-family: 'Fakt';
}

.navbar-light .navbar-nav>.nav-item ul.sub-menu>li:hover>a,
.navbar-light .navbar-nav>.nav-item ul.sub-menu>li.active>a {
	color:#000!important;
    background: #fff;
}

header .navbar-nav.menu-right {
    border-left: 1px solid rgba(255,255,255,0.4);
    margin-left: 17px;
}

/*** BANNER ***/
.banner {
    position: relative;
    padding: 70px 0px 20px 0px;
    height: 100vh;
    display: flex;
    align-items: center;
    overflow: visible;
}

.banner .container {
    position: relative;
    z-index: 3;
}

.banner .logo img {
    max-height: 100px;
}

.banner h1 {
    color: #fff;
    font-size: 60px;
    margin-top: 20px;
    margin-bottom: 5px;
    font-weight: 600;
    font-family: "Open Sans", sans-serif;
}

.banner h6 {
    color: #fff;
    font-size: 14px;
    margin-bottom: 0px;
    letter-spacing: 1.5px;
    font-weight: 600;
    text-transform: uppercase;
}

.banner .btn-default {
    margin: 5px 15px;
    width: 240px;
    vertical-align: top;
    font-size: 14px;
}

.banner p {
    color: #fff;
    font-size: 13px;
    margin-bottom:50px;
    letter-spacing: 1.5px;
    font-weight: 600;
    text-transform: uppercase;
}

.normal-btn {
    display: inline-block;
    line-height: 45px;
    border-bottom: 2px solid #fff;
    color: #fff;
    font-size: 13px;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.normal-btn:hover {
    color: #fff;
    font-weight: bold;
}

.banner:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .5);
    z-index: 2;
    pointer-events: none;
}

.banner video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    object-fit: cover;
}

.banner .logo-remax {
    position: absolute;
    bottom: 20px;
    right: 20px;
    max-height: 90px;
    z-index: 2;
}

.banner .scroll-down {
    cursor: pointer;
    color: #fff;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 500;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
    letter-spacing: 4px;
    position: absolute;
    bottom: 9px;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: auto;
    z-index: 3;
}

.scroll-down:hover {
    opacity: .7;
}

.banner .scroll-down img {
    display: block;
    margin: 17px auto 0;
    max-height: 25px;
}

.scroll-down::after {
    content: '';
    position: absolute;
    top: calc(100% + 13px);
    left: 0;
    right: 0;
    margin: auto;
    width: 1px;
    height: 27px;
    background: #fff;
}

.scroll-down::before {
    content: '';
    position: absolute;
    top: calc(100% + 40px);
    left: 0;
    right: 0;
    margin: auto;
    width: 1px;
    height: 25px;
    background: #fff;
}

/*** CTAS ***/
.ctas {
    position: relative;
}

.cta-box {
    display: inline-block;
    width: 100%;
    position: relative;
    overflow: hidden;
    float: left;
}

.cta-box .img:before {
    content: '';
    background: rgba(0,0,0,1);
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    transition: all .3s;
}

.cta-box:hover .img:before {
    opacity: 0.3;
}

.cta-box .img {
    display: inline-block;
    width: 100%;
    position: relative;
    overflow: hidden;
    transition: all .3s;
    float: left;
}

.cta-box .img img {
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 1 / 1.1;
}

.cta-box .cta-content {
    position: absolute;
    top: 15%;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
    text-align: center;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    transition: all .3s;
    z-index: 3;
    padding: 0px 22px;
}

.cta-box:hover .cta-content {
    opacity: 1;
    top: 0;
    opacity: 1;
}

.cta-box:hover .img:after {
    height: 0px;
}

.cta-box .img:after {
    display: block;
    content: "";
    background: linear-gradient(to top, #000000, #ffffff);
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 87px;
    width: 2px;
    z-index: 5;
    transition: all .3s;
    margin: 0 auto;
    height: 33%;
}

.cta-box h3 {
    color: #fff;
    font-size: 30px;
    letter-spacing: .72px;
    font-weight: 400;
    line-height: normal;
    line-height: 1;
    text-transform: capitalize;
}

.cta-box h3 span {
    font-size: 14px;
    line-height: 22px;
    letter-spacing: 1.7px;
    text-transform: uppercase;
    margin-bottom: 0px;
    display: block;
    position: relative;
    top: 15px;
}

.cta-box p {
    color: #fff;
    /* font-size: 12px;
    line-height: 22px;
    letter-spacing: 1.2px; */
    padding: 30px 0 37px;
    width: 100%;
    max-width: 220px;
    margin: 0 auto;
    max-width: 100%;
    transition: all .3s;
    opacity: 0;
}

.cta-box:hover p,
.cta-box:hover .btn-default {
    opacity: 1;
}

.cta-box .btn-default {
    opacity: 0;
}

/*** ABOUT ***/
.about {
    position: relative;
    padding: 85px 0px;
    background: #fff;
}

.about .btn-link:hover {
    color: #000;
}

.about .section-title p {
    margin-bottom: 20px;
}

.about .wc-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* .wc-bg::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 75%;
    height: 204px;
    background: linear-gradient(to top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    z-index: 2;
} */

.wc-bg canvas {
    display: block;
    width: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: .5;
    filter: grayscale(1);
    height: 100%;
}

.wc-bg::after {
    /* content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 75%;
    height: 204px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%); */
}

.about .container {
    position: relative;
    z-index: 3;
}

.about .imgstyle {
    width: 100%;
}

.about .note {
    display: inline-block;
    position: absolute;
    bottom: -30px;
    left: -30px;
    background: #000;
    padding: 20px 20px;
    text-align: center;
    z-index: 3;
}

.about .note h3 {
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 0px;
}

.about .note p {
    color: #fff;
    font-size: 14px;
}


.about .contact-details {
    max-width: 100%;
}

.owl-carousel .owl-item img {
    display: inline-block;
    width: auto;
}

.about .owl-theme .owl-nav {
    margin: 0px;
}

.about .owl-theme .owl-nav [class*=owl-] {
    margin: 0px;
    position: absolute;
    top: 45%;
    left: 0px;
    background: none !important;
    padding: 0px !important;
    border: none !important;
}

.about .owl-theme .owl-nav [class*=owl-] i {
    font-size: 28px;
    color: #000 !important;
}

.about .owl-theme .owl-nav [class*=owl-].owl-next {
    left: auto;
    right: 0px;
}

.about .imgstyle::after {
    display: none !important;
}

.imgstyle {
    display: inline-block;
    width: 100%;
    margin: 0;
    position: relative;
}

.imgstyle::after {
    content: '';
    position: absolute;
    bottom: -70px;
    left: calc(100% - 114px);
    width: 182px;
    height: 83%;
    background: #000 url(../img/wc-agent-accent.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}

.imgstyle img {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.about .section-title {
    padding: 0px 40px 0px 0px;
}

.about .btn-default {
    margin-top: 0px;
}

/*** STATS ***/
.logos {
    padding: 40px 0px 70px 0px;
    position: relative;
    z-index: 5;
}

.logos .bg {
    background: #fff;
    padding: 0px 70px 0px 70px;
}

.logos .section-title {
    text-align: left;
    display: inline-block;
}

.logos .mt-space {
    padding-top: 30px;
}

.logos .inner h4 {
    font-size: 28px;
}

.logos .inner p {
    font-size: 14px;
    margin-bottom: 0px;
}

.logos .inner>div {
    border-right: 1px solid #ccc;
    padding: 20px 15px;
}

.logos .inner>div:last-child {
    border-right: none;
}

.logos .logo-box {
    display: flex;
    width: 100%;
    height: 110px;
    align-items: center;
    justify-content: center;
    padding: 0 0px;
}

.logos .logo-box img {
    max-height: 90px;
}

.logos .owl-theme .owl-nav {
    margin: 0px;
}

.logos .owl-theme .owl-nav [class*=owl-] {
    margin: 0px;
    position: absolute;
    top: 39%;
    left: -36px;
    background: none !important;
    padding: 0px !important;
    border: none !important;
}

.logos .owl-theme .owl-nav [class*=owl-] i {
    font-size: 28px;
    color: #000 !important;
}

.logos .owl-theme .owl-nav [class*=owl-].owl-next {
    left: auto;
    right: -36px;
}


/*** PROPERTIES ***/
.properties {
    padding: 100px 0px;
    background: #000;
}

.properties .section-title h6 {
    font-size: 14px;
    letter-spacing: 9px;
}

.properties .owl-theme .owl-nav [class*=owl-] {	
    color: #fff;
    text-decoration: none;
    transition: 0.2s;
    white-space: nowrap;
    font-weight: 400;
    line-height: 1;
    font-size: 14px;
    text-transform: uppercase;
	background: none;
	padding: 0;
	border-radius: 0;
	position: relative;
	letter-spacing: 1px;
    margin: 0px 15px;
}

.properties .owl-theme .owl-nav [class*=owl-]:after {
    background-color: #fff;
}

.properties .owl-theme .owl-nav [class*=owl-]:first-child:after {
    content: '';
    position: absolute;
    width: 1px;
    height: 16px;
    margin: 0px 17px;
    margin-top: -5px;
    top: 3px;
    background-color: #fff;
}

.properties .owl-nav {
	margin-top: 0;
	margin-bottom: 20px;
}

.property-box {
    display: inline-block;
    width: 100%;
    position: relative;
    overflow: hidden;
    transition: all .2s ease;
    margin-bottom: 30px;
}

.overlay-box {
    display: inline-block;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0px;
    transition: all .2s ease;
    opacity: 0;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.7);
    padding-bottom: 150px;
}

.property-box h4 {
    font-size: 20px;
    margin-top: 0px;
    margin-bottom: 15px;
}

.property-box:hover .overlay-box {
    opacity: 1;
}

.property-box .img {
    position: relative;
    overflow: hidden;
    transition: all .3s;
}

.property-box .img img {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / .6;
    transition: all .3s;
    object-fit: cover;
}

.property-box .tag {
    margin: 0px;
    position: absolute;
    right: 0px;
    top: 0px;
    box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .4);
    background: #000;
    z-index: 3;
    color: #fff;
    font-size: 14px;
    border-radius: 0px;
    padding: 8px 0px;
    text-align: center;
    min-width: 140px;
    text-transform: uppercase;
    font-weight: 600;
}

.property-box .tag i {
    margin-right: 5px;
    font-size: 16px;
}

.property-box .text {
    position: relative;
    background: #fff;
    padding: 5px 16px 35px 16px;
    text-align: center;
    transition: all .3s;
    top: 0px;
}

.property-box .text h3 {
    color: #000;
    font-weight: 700;
    letter-spacing: 1px;
    font-size: 18px;
    margin: 10px 0px 0px 0px;
}

.property-box .text p {
    line-height: 1.3;
    color: #000;
    font-weight: bold;
    font-size: 15px;
    margin: 13px 0px;
    text-transform: uppercase;
}

.property-box .text p span {
    padding: 0px 5px;
}

.property-box .text p.price {
    font-size: 18px;
    margin: 5px 0px;
    letter-spacing: 4px;
}

.properties .btn-default {
    margin-top: 0px;
}

.properties .btn-default.white {
    /* width: 280px; */
}


/*** EXPLORE MARKETS HEADING ***/
.communities {
    padding: 100px 0px 80px 0px;
    background: #f2f1ed;
    background: #000;
}

.communities p {
    color: #fff;
}

.communities .section-title {
    display: inline-block;
    margin-bottom: 30px;
}

.communities .section-title img {
    max-height: 25px;
    margin-bottom: 40px;
}

.communities .section-title h2 {
    margin-bottom: 0;
}

.communities .custom-nav {
    margin: 20px 0px 60px 0px;
}

.communities .custom-nav button {
    color: #000000;
    font-size: 24px;
    background-color: rgba(255, 255, 255, 0);
    border: 1px solid #000000 !important;
    height: 56px;
    width: 56px;
    line-height: 50px;
    text-align: center;
    box-shadow: none;
    margin-left: 5px;
    border-radius: 50%;
    transition: all .3s;
}

.communities .custom-nav button i {
    font-size: 20px;
}

.communities .custom-nav button:last-child {
    padding-left: 8px;
}

.communities .custom-nav button:hover {
    background: #000;
    color: #fff;
}

.communities p {
}

.communities .owl-carousel .owl-stage-outer {
    padding: 0px 0px;
    overflow: visible;
}

.communities h3 {
    font-weight: 500;
}

.communities .btn-default {
    margin-top: 80px;
}

.sector-box {
    display: inline-block;
    width: 100%;
    position: relative;
}

.sector-box .img {
    display: inline-block;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.sector-box:hover .img .explore {
    opacity: 1;
}

.sector-box .img .explore {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #000;
    border-radius: 50%;
    letter-spacing: 0.15rem;
    height: 120px;
    width: 120px;
    color: #fff;
    font-size: 13px;
    line-height: 1.4;
    position: absolute;
    right: 30px;
    bottom: 30px;
    padding: 0 15px;
    text-transform: uppercase;
    opacity: 0;
    transition: all .3s;
}

.sector-box .img .explore:before {
    content: "";
    position: absolute;
    inset: 4px;
    border-radius: 50%;
    border: 1px dashed rgba(255, 255, 255, 0.5);
    -webkit-animation: subtitle-rotate 45s linear infinite;
    animation: subtitle-rotate 45s linear infinite;
}

@-webkit-keyframes subtitle-rotate {
    from {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes subtitle-rotate {
    from {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.sector-box .img img {
    display: inline-block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 1 / 1.2;
}

.sector-box .text {
    display: inline-block;
    width: 100%;
    position: relative;
    padding-top: 20px;
    padding-left: 40px;
}

.sector-box .text::before {
    content: '';
    background: #59514D;
    opacity: .4;
    width: 1px;
    height: 150px;
    position: absolute;
    top: -50px;
    left: 19px;
    transition: all .3s;
}

.sector-box:hover .text::before {
    height: 0;
}



/*** EXPLORE MARKETS ***/
.explore-markets {
    background: #000;
    padding: 100px 0px;
}

.explore-cta {
    display: inline-block;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.explore-cta img {
    width: 100% !important;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 1 / .8;
    transition: all .3s;
}

.explore-cta:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    opacity: 0.6;
    background-color: rgba(0, 0, 0, 0.3);
    z-index: 2;
    transition: all .3s;
}

.explore-cta:hover:before {
    background-color: rgba(0, 0, 0, 1);
}

.explore-cta:hover img {
    transform: scale(1.1);
}

.explore-cta h4 {
    position: absolute;
    top: 40%;
    left: 0;
    width: 100%;
    text-align: center;
    color: #fff;
    letter-spacing: 4px;
    z-index: 3;
    transition: all .5s;
}

.explore-cta:hover h4 {
    top: 20%;
}


/*** TESTIMONIALS ***/
.testimonials {
    padding: 100px 0px;
    position: relative;
}

.testimonials .section-title {
    margin-bottom: 50px;
}

.testimonials .bg {
    background: #fff;
    position: relative;
    z-index: 3;
    width: 130%;
    left: -30%;
    padding: 65px 50px 70px;
    box-shadow: 0px 20px 30px 0px rgb(0 0 0 / 5%);
}

.testimonials .container {
    position: relative;
    z-index: 3;
}

.testi-bg {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    width: 100%;
    height: calc(100% - 80px);
}

.testi-bg canvas {
    background-size: auto 100%;
    background-position: right -100px center;
    background-repeat: no-repeat;
    height: 100%;
    display: block;
    width: 100%;
}

.testi-accent {
    position: absolute;
    top: 0;
    left: 0;
    background: #000;
    width: 33.5%;
    height: 68%;
}

.testi-accent canvas {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 100%;
    display: block;
    width: 100%;
}

.testimonials .quote-carousel {
    text-align: center;
    position: relative;
}

.testimonials .quote-carousel .item {
    padding: 0px 100px;
}

.testimonials .quote-carousel .item p b {
    text-transform: uppercase;
    font-family: "Montserrat", sans-serif;
}

.testimonials h3 {
    color: #000;
    font-weight: 600;
    font-size: 16px;
    margin-top: 30px;
}

.testimonials h3 span {
    font-size: 14px;
}


.testimonials .quote-carousel .owl-nav {
    position: absolute;
    top: 25%;
    width: 100%;
}

.testimonials .quote-carousel .owl-nav button {
    font-size: 42px;
    background: none !important;
    color: #000 !important;
}

.testimonials .quote-carousel .owl-nav .owl-prev {
    float: left;
}

.testimonials .quote-carousel .owl-nav .owl-next {
    float: right;
}

.testi-box {
    display: inline-block;
    width: 100%;
    background-color: rgba(17, 17, 17, 0.05);
    padding: 24px;
    border-radius: 34px;
    position: relative;
    height: calc(100% - 20px);
    margin-bottom: 20px;
}

.testi-box .user-box {
    display: flex;
    align-items: center;
}

.testi-box .user-box .name {
    display: flex;
    align-items: center;
    color: #fff;
    font-size: 20px;
    background: #ec407a;
    min-width: 40px;
    line-height: 40px;
    border-radius: 50%;
    text-align: center;
    text-transform: uppercase;
    justify-content: center;
    margin-right: 12px;
}

.testi-box .user-box .name.bg2 {
    background: #5d4037;
}

.testi-box .user-box .name.bg3 {
    background: #e66800;
}

.testi-box .user-box .name.bg4 {
    background: #689f38;
}

.testi-box .user-box h5 {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
    margin: 0;
}

.testi-box .user-box h5 span {
    font-size: 14px;
    font-family: 'Fakt';
    font-weight: 400;
    color: rgba(17, 17, 17, 0.5);
}

.testi-box p {
    display: -webkit-box;
    -webkit-line-clamp: 5; /* Show only 3 lines */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 5px;
    line-height: 1.55;
}

.testi-box p.expanded {
    display: block;
    -webkit-line-clamp: unset;
    overflow: visible;
}


.testi-box .read-more {
    font-size: 15px;
    color: #7c7979;
}

.testimonials .btn-default {
    margin-top: 40px;
}

/*** SOCIAL MEDIA ***/
.social-media {
    padding: 80px 0px 80px 0px;
    position: relative;
}

.social-media .section-title {
    display: inline-block;
    margin-bottom: 20px;
}

.social-media .socials {
    text-align: right;
}

.social-media .socials .fa {
    font-size: 32px;
    margin: 0px 15px;
}

.social-media .container {
    position: relative;
    z-index: 2;
}

.social-media .sm-accent {
    position: absolute;
    z-index: 1;
    bottom: 0;
    right: 0;
    width: 40%;
    height: 30%;
    pointer-events: none;
}

.social-media .sm-accent canvas {
    display: block;
    width: 100%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    height: 100%;
}

.social-media .container .row {
    position: relative;
    z-index: 3;
}

.social-media .img {
    margin-bottom: 60px;
}

.social-media p {
    color: #000;
    margin-top: 0px;
    margin-bottom: 50px;
}

.social-media .contact-details .fa {
    font-size: 20px;
    color: #000;
    background: none;
    border: 1px solid #000;
    min-width: 70px;
    max-height: 70px;
    line-height: 68px;
    border-radius: 0px;
    text-align: center;
}

.social-media .contact-details .fa:hover {
    color: #fff;
}

/*** SOLD MAP ***/
.sold-map {
    padding: 75px 0px 0px 0px;
}

section {
    overflow: hidden;
}

.social-box img {
    transition: all .3s;
    width: 100%;
    object-fit: cover;
    aspect-ratio: 1 / 1.1;
}

.social-box {
    display: inline-block;
    width: 100%;
    position: relative;
    overflow: hidden;
    transition: all .3s;
    margin-bottom: 20px;
}

.social-box:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    transition: all .3s;
    opacity: 0;
    z-index: 3;
}

.social-box:hover:before {
    opacity: .4;
}

.social-box:hover .img {
    transform: scale(1.1);
}

/*** CONTACT-FORM ***/
.contact-form {
    padding: 90px 0px;
    background: #000;
    background: url(../img/bg-contact.jpg) 50% 50% no-repeat;
    background-size: cover;
    position: relative;
}

.contact-form .bg {
    background: #fff;
    padding: 45px 30px 50px 30px;
}

.contact-form:after {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgba(0, 0, 0, 0.7);
    top: 0;
    left: 0;
    z-index: 1;
}

.contact-form .row {
    position: relative;
    z-index: 2;
}

.contact-form .section-title h2 {
    line-height: 1;
    margin-bottom: 65px;
}

.contact-form .rt {
    padding-left: 60px;
}

.contact-form .contact-list {
    list-style: none;
    padding: 0;
    margin: 0;
    border-bottom: 1px solid #fff;
    padding-bottom: 10px;
    margin-bottom: 30px;
}

.contact-form .contact-list li {
    margin-bottom: 10px;
}

.contact-form .contact-list i {
    background: #fff;
    min-width: 40px;
    min-height: 40px;
    line-height: 40px;
    border-radius: 50%;
    color: #000;
    font-size: 18px;
    margin-right: 10px;
    text-align: center;
    display: block;
    position: relative;
    top: -4px;
}

.contact-form .contact-list a {
    display: flex;
    gap: 10px;
    color: #fff;
    max-width: max-content;
    align-items: start;
    font-size: 18px;
    color: #fff;
}

.contact-form .contact-list a:hover {
    opacity: .8;
}

.contact-form .contact-list.lt {
    border-bottom: none;
    padding-bottom: 0px;
    margin-bottom: 0px;
}

.contact-form h3 {
    color: #fff;
    font-weight: 600;
    font-size: 24px;
    margin-bottom: 10px;
}

.contact-form p {
    color: #fff;
}

.contact-form .bg h3 {
    color: #000;
}

.contact-form .bg p {
    color: #000;
    margin-bottom: 30px;
}

.contact-form .btn-default {
    min-width: 180px;
    margin-top: 25px;
}

.contact-form .logo {
    max-height: 100px;
}

.form-control {
    background: #fff;
    border: none;
    border-bottom: 1px solid rgba(0, 0, 0, .3);
    border-radius: 0px;
    padding: 15px 0px;
    margin-bottom: 18px;
    height: 55px;
    color: #000;
    font-weight: 500;
    font-size: 16px;
    font-family: 'Fakt';
}

.form-control::placeholder {
    color: #000;
}

.form-control:focus {
    color: #000;
    outline: 0;
    box-shadow: none;
    background: #fff;
    border-color: #000;
}

textarea {
    height: 100px;
    resize: none;
}

textarea.form-control {
    height: 150px;
    resize: none;
}

.contact-form h5 {
    color: #ffffff;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 18px;
    margin: 0px 0 15px;
}

.contact-form .form-check label {
    color: #fff;
}

.contact-form .form-check label a {
    color: #fff;
    text-decoration: underline;
}

.contact-form.inner label {
    margin-bottom: 0px;
}

.contact-form.inner .form-control::-webkit-input-placeholder {
    color: rgba(0, 0, 0, .5);
}

.contact-form.inner .form-control {
    padding: 0px 0px;
    height: 35px;
    margin-bottom: 24px;
}

.contact-form.inner select.form-control {
    appearance: auto;
}

/*** FOOTER ***/
.footer {
    padding: 80px 0px 20px 0px;
    background: #000;
}

.footer .bg {
    /* padding: 75px 20px 20px 40px;
    background: #000;
    border-radius: 20px; */
}

.footer .logo {
    margin-right: 20px;
}

.footer .logo img {
    max-height: 65px;
}

.footer .agency-logo {
    margin-top: 25px;
    display: inline-block;
}

.footer .agency-logo img {
    max-height: 60px;
    margin-top: 8px;
    margin-left: 15px;;
}

.footer h2 {
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 26px;
    color: #fff;
    margin-top: 30px;
    margin-bottom: 0px;
}

.footer h4 {
    letter-spacing: 1px;
    font-weight: 600;
    font-size: 22px;
    color: #fff;
    margin-bottom: 15px;
}

.footer .mtop {
    margin-top: 80px;
}

.footer .link {
    color: #fff;
    font-size: 18px;
    line-height: 1.7;
}

.footer .link.tel {
    font-size: 22px;
    font-weight: bold;
}

.footer .link:hover {
    opacity: .8;
    color: #fff;
}

.footer p {
    color: #fff;
}

.footer h5 {
    text-transform: uppercase;
    letter-spacing: 0px;
    font-size: 13px;
    margin: 10px 0px;
    color: #fff;
    font-weight: bold;
}

.footer hr {
    border-color: #ffffff33;
    margin: 60px 0px 20px 0px;
    opacity: 1;
}

.footer-menu {
    list-style: none;
    margin: 0px;
    padding: 0px;
    margin-top: 25px;
}

.footer-menu li {
    display: inline-block;
    margin: 0px 18px 10px 0px;
}

.footer-menu li:last-child {
    margin-right: 0px;
}

.footer-menu li a {
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    text-transform: capitalize;
}

.footer-menu li a:hover {
    opacity: .5;
}

.footer .copyrights p {
    color: #fff;
    font-size: 16px;
    letter-spacing: 0;
    font-weight: 400;
    margin: 8px 0px 10px 0px;
    text-align: center;
}

.footer .copyrights p img {
    max-height: 50px;
    margin-left: 5px;
}


.social-links.black {
    color: #000;
}

.social-links.black li a i {
    color: #000;
    border-color: #000;
}

.social-links.black li a:hover i {
    background: #000;
    color: #fff;
}

.social-links {
    list-style: none;
    margin: 0px;
    padding: 0px;
    color: #fff;
}

.social-links li {
    display: inline-block;
    margin: 10px 5px;
    text-align: center;
}

.social-links li a i {
    display: inline-block;
    border: 1px solid #fff;
    color: #fff;
    line-height: 32px;
    border-radius: 50%;
    transition: all .3s;
    width: 35px;
    height: 35px;
    font-size: 15px;
}

.social-links li a:hover i {
    background: #fff;
    color: #000;
}


.contact-links {
    list-style: none;
    margin: 0px;
    padding: 0px;
    color: #fff;
    max-width: 256px;
    text-align: right;
}

.contact-links li {
    width: 100%;
    display: block;
    border-right: solid 1px rgb(255 255 255 / 50%);
    padding: 0px 40px 0px 0px;
    margin-bottom:15px;
    position: relative;
}

.contact-links li a {
    display: inline-block;
    color: #fff;
    align-items: center;
    font-family: 'Fakt';
    padding: 0;
    font-size:20px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: .7px;
}

.contact-links li a:hover {
    color: #fff;
    opacity: .6;
}

.contact-links li .sub-menu {
    padding: 0px;
    margin: 0px;
    list-style: none;
    left: 130%;
    position: relative;
    text-align: left;
    margin-top: -34px;
}

.contact-links li .sub-menu li {
    padding: 0px;
    border: none;
}

.contact-links li .sub-menu li a  {
    padding: 0px;
    font-size: 14px;
    line-height: 1;
}

.contact-links .fa {
    font-size: 16px;
    min-width: 25px;
    color: #fff;
    text-align: center;
    line-height: 18px;
}



/*** PAGE-BANNER ***/
.page-banner {
    height: 60vh;
    padding-top: 60px;
    position: relative;
    overflow: hidden;
}

.page-banner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,.5);
    z-index: 1;
}

.page-banner .row {
    position: relative;
    z-index: 2;
}

.page-banner h1 {
    color: #fff;
    font-size: 45px;
    margin: 0px;
    text-transform: uppercase;
    letter-spacing: 2px;
}


/*** PROPERTIES INNER ***/
.properties.inner-properties {
    padding: 50px 0px;
}


/*** TEAM-INFO ***/
.team-info {
    background: #f5f5f5;
    background: #f2f1ed;
    padding: 80px 0px 65px 0px;
}

.team-details .section-title h6 {
    font-size: 14px;
    letter-spacing: 6px;
}

.team-info .section-title {
    margin-bottom: 40px;
}

.team-box {
    display: inline-block;
    width: 100%;
    margin-bottom: 25px;
}

.team-box .img {
    display: inline-block;
    width: 100%;
    position: relative;
    overflow: hidden;
    background: #fff;
    background: #000;
    transition: all .3s;
}

.team-box:hover .img {
    background: #000;
}

.team-box .img img {
    display: inline-block;
    width: 100%;
    aspect-ratio: 1 / 1.4;
    object-fit: cover;
    transition: all .3s;
}

.team-box:hover .img img {
    transform: scale(1.1);
    opacity: .6;
}

.team-box .contact-details li {
    display: inline-block;
    margin: 0px 2px;
}

.team-box .contact-details a {
    justify-self: center;
    margin: 0;
}

.team-box .contact-details a i {
    margin: 0;
}

.team-box .img .social-links {
    position: absolute;
    bottom: -110%;
    left: 0px;
    width: 100%;
    transition: all .3s;
}

.team-box:hover .img .social-links {
    bottom: 15px;
}

.team-box h3 {
    color: #000;
    font-size: 22px;
    font-weight: 600;
    margin: 15px 0px 0px 0px;
    line-height: 1.1;
}

.team-box h6 {
    color: #000;
    font-size: 14px;
    font-weight: 400;
    font-style: italic;
    margin: 10px 0px 25px 0px;
}

.team-box .contact-list li {
    display: inline-block;
    margin: 0px 2px 5px 2px;
}

.team-box .contact-list li a {
    max-width: inherit;
    justify-content: center;
}

.team-box .contact-list.social {
    margin-top: 20px;
}

.team-box .contact-list.social {
    margin-top: 20px;
    justify-content: center;
}

.team-details .right-side .contact-details li {
    display: inline-block;
    margin: 0px 2px;
}

.team-details .right-side .contact-details a {
    justify-self: center;
    margin: 0;
}

.team-details .right-side .contact-details a i {
    margin: 0;
}





/*** BUYSELL FORM ***/
.buysellform {
    padding: 80px 0px;
    background: #000;
    position: relative;
    overflow: hidden;
}

.buysellform:after {
    /* content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgba(0,0,0,.6);
    top: 0;
    left: 0;
    z-index: 1; */
}

.buysellform .section-title {
    margin-bottom: 30px;
}

.buysellform .form-control {
    padding: 0px 20px;
    margin-bottom: 20px;
}

.buysellform option {
    color: #000;
}

.buysellform textarea.form-control {
    padding: 15px 20px;
    height: 124px;
    resize: none;
}

.buysellform select.form-control {
    appearance: auto;
}

.buysellform .btn-default {
    margin-top: 20px;
}

/*** INFO SMALL ***/
.info-small {
    padding: 80px 0px;
    background: #fff;
    position: relative;
    overflow: hidden;
}

.info-small:after {
    content: '';
    width: 46.875%;
    height: 170px;
    bottom: 0;
    right: 0;
    background: url(../img/bg-properties.jpg) no-repeat left center / cover;
    position: absolute;
    z-index: 1;
}

.info-small .section-title {
    margin-bottom: 30px;
}

.info-small p {
    margin-bottom: 20px;
}

.info-small .section-title {
    margin-bottom: 0px;
}


/*** CALC INFO ***/
.calc-info {
    padding: 70px 0px;
    overflow: hidden;
    background: #fff;
}

mw-calc-panel-body, mw-calc-section {
	background:#000 !important;
	border-radius: 0px !important;
	box-shadow: none !important;
	padding:35px 0px !important;
}

mw-calc-section {
	padding:35px 30px !important;
}

mw-calc-label {
	color: #fff !important;
	font-weight: 400 !important;
}

.mw-calc-search-input {
	border-radius: 0px !important;
}

#calculate_lt {
	color: #fff !important;
    background: none !important;
    font-size: 15px !important;
    line-height: 53px !important;
    border: 1px solid #c1c1c1 !important;
    border-radius: 0px !important;
    letter-spacing:2.5px !important;
    font-weight: 700 !important;
    padding: 0px 25px !important;
    text-transform: uppercase;
    transition: all .3s;
    font-family: 'Fakt';
}

#calculate_lt:hover {
	color: #000 !important;
    background: #fff !important;
    border-color: #fff !important;
}

.mw-calc-table > tbody > tr.active {
    border-color: #000 !important;
}

.mw-calc-table > tbody > tr.active > td {
    background: #000 !important;
    border-color: #000 !important;
    color: #fff !important;
}



/*** EVALUATION BOX ***/
.evaluation-box {
    padding: 75px 0px;
    position: relative;
}

.evaluation-box .section-title h2 {
    font-size: 66px;
}

.evaluation-box .bg-form {
    padding:75px 50px;
    background: #000;
}

.evaluation-box label {
    font-size: 18px;
    font-weight: 500;
    margin-top: 10px;
    margin-bottom: 15px;
    color: #fff;
}

.evaluation-box .checkbox-group label {
    font-size: 16px;
    margin-top: 0px;
    margin-bottom: 20px;
    color: #fff;
    font-weight: 400;
}

.evaluation-box .btn-default.bordered {
    width: 100%;
    line-height: 1.4;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 0px;
    padding: 25px 0px;
    height: inherit;
    font-weight: 500;
    background: none;
    display: inline-block;
    clip-path: polygon(0 0, 100% 0, 100% 70%, 90% 100%, 0% 100%);
    clip-path: none;
}

.evaluation-box .btn-default.bordered span {
    font-size: 12px;
    letter-spacing: .5px;
}

.evaluation-box .btn-default.bordered:hover, .evaluation-box .btn-default.bordered.active {
    background: #fff !important;
    border-color: transparent!important;
    color: #000!important;
}

.evaluation-box .btn-default.bordered:hover span,
.evaluation-box .btn-default.bordered.active span {
    color: #000;
}

.evaluation-box .btn-default.bordered:before, .evaluation-box .btn-default.bordered:after {
    display: none;
}

.evaluation-box fieldset {
    display: none;
}

.evaluation-box fieldset.active {
    display: block;
}

.evaluation-box .navigate-btns {
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
}

.evaluation-box p {
    color: #fff;
}

fieldset#StepOne .navigate-btns {
    justify-content: end;
}

.evaluation-box .checkbox-group {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; 
}

.evaluation-box .checkbox-group label {
    flex: 0 1 calc(50% - 10px); 
    margin-bottom: 25px; 
}

.evaluation-box input[type="checkbox"] {    
    width: 25px;
    height: 25px;
    vertical-align: middle;
    display: inline-block;
    margin-bottom: 0px;
    margin-right: 10px;
}

.evaluation-box .form-control {
    margin-bottom: 18px;
    border-radius: 0px;
    height: 50px;
    padding: 0px 20px;
}


/*** SECTORS INFO ***/
.sectors-info {
    padding: 80px 0px 80px 0px;
}

.sectors-info h3 {
    font-size: 30px;
    font-weight: bold;
    margin-top: 25px;
}

/**/
.communities {
    overflow: hidden;
    padding-bottom: 0;
}

.communities .mbottom {
    margin-bottom: 90px;
}

.communities .img-box {
    display: inline-block;
    width: 100%;
    min-height: 620px;
    position: relative;
    overflow: hidden;
    padding: 40px 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    will-change: background-position;
}

.communities .img-box .bg-img {
    position: absolute;
    top: -10%;
    left: 0px;
    width: 120%;
    height: 140%;
    z-index: 0;
    pointer-events: none;
    transition: all .3s;
}

.communities .img-box::before {
    content: '';
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: #21242F;
    opacity: 0.67;
    pointer-events: none;
    z-index: 1;
}

.communities .img-box>div {
    position: relative;
    z-index: 2;
}

.communities .img-box p {
    color: #fff;
}

.communities .bg-right {
    display: inline-block;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    padding: 20px 80px;
    background: #000;
}

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

.communities .bg-right h5 {
    color: #fff;
    opacity: .5;
    text-transform: uppercase;
    font-size: 20px;
    letter-spacing: 1px;
}

.communities .bg-right h2 {
    color: #fff;
    font-weight: bold;
    font-size: 65px;
    margin: 0px 0px 20px 0px;
}

.communities .bg-right .btn-default {
    margin: 0px 0px 0px 0px;
}

.communities .down .btn-default {
    margin: 50px 0px;
}


/*** contact-map ***/
.contact-map iframe {
    float: left;
    width: 100%;
}


/*** SERVICES INNER ***/
.ctas.services-inner {
    padding: 70px 0px;
}

.ctas.services-inner .cta-box {
    margin-bottom: 24px;
}

.ctas.services-inner .cta-box .img:before {
    background: rgba(0, 0, 0, .6);
}

.ctas.services-inner .cta-box .img img {
    aspect-ratio: 1 / .9;
}

.ctas.services-inner .cta-box .icon {
    filter: invert(1);
    max-height: 70px;
}

.ctas.services-inner .cta-box p {
    font-size: 15px;
    line-height: 23px;
}


/*** BLOGS ***/
.blogs {
    padding: 80px 0px 40px 0px;
}

.blogs h3 {
    font-weight: 500;
}

.blogs .btn-default {
    margin-top: 80px;
}

.blog-box {
    display: inline-block;
    width: 100%;
    position: relative;
    margin-bottom: 40px;
}

.blog-box .img {
    display: inline-block;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.blog-box .img img {
    display: inline-block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 1 / 1.2;
}

.blog-box .text {
    display: inline-block;
    width: 100%;
    position: relative;
    padding-top: 20px;
}

.blog-box:hover .img .explore {
    opacity: 1;
}

.blog-box .img .explore {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #000;
    border-radius: 50%;
    letter-spacing: 0.15rem;
    height: 120px;
    width: 120px;
    color: #fff;
    font-size: 13px;
    line-height: 1.4;
    position: absolute;
    right: 30px;
    bottom: 30px;
    padding: 0 15px;
    text-transform: uppercase;
    opacity: 0;
    transition: all .3s;
}

.blog-box .img .explore:before {
    content: "";
    position: absolute;
    inset: 4px;
    border-radius: 50%;
    border: 1px dashed rgba(255, 255, 255, 0.5);
    -webkit-animation: subtitle-rotate 45s linear infinite;
    animation: subtitle-rotate 45s linear infinite;
}


/*** capsules-videos ***/
.capsules-videos {
    padding: 80px 0px 40px 0px;
    background: #000;
}

.capsules-videos .ratio {
    margin-bottom: 40px;
}


/*** home-stage-info ***/
.home-stage-info {
    padding: 70px 0px;
}

.home-stage-info .btn-default {
    margin-top: 30px;
}

.home-stage-box {
    display: inline-block;
    width: 100%;
    text-align: center;
    margin-bottom: 30px;
}

.home-stage-box h3 {
    font-weight: 600;
    margin: 15px 0px 5px 0px;
}

.home-stage-box img {
    filter:brightness(0);
}



/*** home-evaluation ***/

.communities.home-evaluation-inner .bg-right h2 {
    font-size: 50px;
}

.communities.home-evaluation-inner .bg-right p {
    color: #fff;
}


/*** home-info ***/
.home-info {
    padding: 80px 0px;
}

.home-info .section-title {
    margin-bottom: 50px;
}

.home-info h4 {
    font-weight: bold;
}

ul.list {
    padding-left: 20px;
    font-size: 16px;
    margin-bottom: 15px;
    line-height: 1.8;
}

ul.list li {
    margin-bottom: 2px;
}

ul.number-list {
    padding-left: 20px;
    font-size: 16px;
    margin-bottom: 15px;
    line-height: 1.8;
}

.home-info .down {
    margin-top: 50px;
}

.home-info .btn-default {
    margin-top: 30px;
}


/*** home-method ***/
.home-method {
    padding: 80px 0px;
    background: #000;
}

.home-method .section-title {
    margin-bottom: 50px;
}

.home-method .section-title h3 {
    color: #000;
    font-size: 24px;
    font-weight: 600;
    margin-top: 15px;
    margin-bottom: 15px;
}

.home-method .section-title.white h3 {
    color: #fff;
}

.home-method .down h2 {
    color: #fff;
    font-size: 28px;
    margin-bottom: 30px;
}

.method-box {
    display: inline-block;
    width: 100%;
    height: calc(100% - 25px);
    margin-bottom: 25px;
    padding: 40px 30px;
    border: 1px solid #fff;
    text-align: center;
}

.method-box h3 {
    color: #fff;
    font-size: 24px;
    font-weight: 600;
    margin: 0px 0px 20px 0px;
}

.method-box p {
    color: #fff;
    margin: 0px 0px 0px 0px;
}

.home-method .down p {
    margin-top: 50px;
    color: #fff;
}


/*** faq ***/
.faq {
    padding: 80px 0px;
}

.faq .section-title {
    margin-bottom: 50px;
}

.accordion-item {
    bottom: none;
    padding: 0;
    border-radius: 0;
}

.accordion-item:first-of-type .accordion-button {
    border-radius: 0px;
    color: #000;
}

.accordion-button:not(.collapsed) {
    background: #000 !important;
    color: #fff !important;
    border-radius: 0px;
}

.accordion-button {
    padding-right: 30px;
    position: relative;
    box-shadow: none !important;
}

.accordion-button::before {
    content: '';
}
.accordion-button::after {
    content: '';
    display: none;
}

.accordion-button .icon {
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -8px;
    color: #fff;
    display: none;
}

.accordion-button .icon.minus {
    display: block;
}

.accordion-button.collapsed .icon {
    display: inline-block;
}

.accordion-button.collapsed .icon.minus {
    display: none;
}

.accordion-button.collapsed .icon {
    color: #000;
}


input.wpcf7-form-control.wpcf7-not-valid{
	border-bottom: 2px solid #f00 !important;
}
span.wpcf7-not-valid-tip{
	display:none;
}
div.wpcf7-validation-errors, div.wpcf7-acceptance-missing{
	display:inline-block !important; 
}

.wpcf7-response-output.wpcf7-display-none.wpcf7-mail-sent-ok{
	display:inline-block !important;
}


/* ✅ Success message (form sent) */
.wpcf7 form.sent .wpcf7-response-output,  {
	background: #f6f4ee; /* soft beige or light neutral background */
	color: #0a3a2a; /* elegant dark green accent */
	border: 2px solid #0a3a2a;
	padding: 1rem 1.5rem;
	border-radius: 12px;
	font-family: 'Poppins', 'Helvetica Neue', sans-serif;
	font-size: 16px;
	font-weight: 500;
	text-align: center;
	max-width: 500px;
	margin: 1.5rem auto;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
	opacity: 0;
	animation: fadeInUp 0.6s ease forwards;
}

/* ❌ Error message (validation failed or required fields missing) */
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output, .wpcf7-response-output.wpcf7-display-none.wpcf7-validation-errors{
	background: #fdf2f2; /* soft red background */
	color: #8b0000; /* deep red text */
	border: 2px solid #e63946; /* elegant red border */
	padding: 1rem 1.5rem;
	border-radius: 12px;
	font-family: 'Poppins', 'Helvetica Neue', sans-serif;
	font-size: 16px;
	font-weight: 500;
	text-align: center;
	max-width: 500px;
	margin: 1.5rem auto;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
	opacity: 0;
	animation: fadeInUp 0.6s ease forwards;
}

/* ⚠️ Individual field validation tips (inline error under fields) */
.wpcf7-not-valid-tip {
	color: #e63946; /* red accent for field warnings */
	font-size: 14px;
	margin-top: 4px;
	font-weight: 500;
}

/* ✨ Fade-in animation for both messages */
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(10px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.otgs-development-site-front-end{
	display:none;
}

.navigation ul {
    display: inline-block;
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0;
    margin-top: 30px;
}
 
.navigation ul li {
    display: inline-block;
    margin: 2px 2px;
}
 
.navigation ul li a {
    display: inline-block;
    color: #000;
    border: 1px solid #dfd7d7;
    padding: 6px 13px;
    font-size: 16px;
}
 
.navigation ul li:hover> a, .navigation ul li.active> a {
    background: #000;
    color: #fff;
    border-color: #000;
}
 
  
.navbar-light .navbar-nav>.nav-item>.nav-link {
    font-size: 13px;
}
 
.navbar-light .navbar-nav>.nav-item {
    margin-left: 13px;
}
 
.about h3 {
    margin-bottom: 15px;
}
 .communities .section-title.white h3 {
    color: #fff;
}