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

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

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

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

@font-face {
    font-family: 'Trajan Pro';
    src: url('../fonts/TrajanPro-Regular.eot');
    src: url('../fonts/TrajanPro-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/TrajanPro-Regular.woff2') format('woff2'),
        url('../fonts/TrajanPro-Regular.woff') format('woff'),
        url('../fonts/TrajanPro-Regular.ttf') format('truetype'),
        url('../fonts/TrajanPro-Regular.svg#TrajanPro-Regular') format('svg');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

:root {
	--black: #000000;
	--white: #ffffff;
	--light: #f6f6f6;
	--facebook: #1877F2;
	--instagram: #E4405F;
	--twitter: #1DA1F2;
	--whatsapp: #25D366;
}

/*********************
 GENERAL
 *********************/
body, p { color: var(--site4); font-family: 'Manrope', sans-serif; font-size: 17px; font-weight: 400; line-height: 25px; }
b, strong { font-weight: 700; }
a, button { transition: .5s all ease; -webkit-transition: .5s all ease; -moz-transition: .5s all ease; }
a, button, a:hover { text-decoration: none; }
button, button:hover, button:focus { box-shadow: none; }
button:hover, button:focus { outline: 0; }

h1, h2, h3, h4, h5, h6 { margin-bottom: 15px; }
h1, h2, h3, h4, h5 { font-family: 'Trajan Pro'; font-weight: 400; }
h1 + p, h2 + p, h3 + p { margin-top: 20px; }
h3, h4, h5 { color: var(--black); }
h1, .h1, h2, .h2 { color: var(--site1); font-size: 44px; line-height: 48px; }
h3, .h3 { font-size: 34px; line-height: 38px; }
h4, .h4 { font-size: 29px; line-height: 33px; }
h5, .h5 { font-size: 24px; line-height: 28px; }
h6, .h6 { color: var(--site4); font-size: 19px; font-weight: 300; letter-spacing: 2px; line-height: 23px; }

@media (max-width: 1199px) {
    h1, .h1, h2, .h2 { font-size: 40px; line-height: 44px; }
    h3, .h3 { font-size: 32px; line-height: 36px; }
    h4, .h4 { font-size: 27px; line-height: 31px; }
    h5, .h5 { font-size: 23px; line-height: 27px; }
    h6, .h6 { font-size: 18px; line-height: 22px; }
    body, p { font-size: 16px; line-height: 24px; }
}

@media (max-width: 992px) {
    h1, .h1, h2, .h2 { font-size: 36px; line-height: 40px; }
    h3, .h3 { font-size: 30px; line-height: 34px; }
    h4, .h4 { font-size: 26px; line-height: 30px; }
    h5, .h5 { font-size: 22px; line-height: 26px; }
    h6, .h6 { font-size: 17px; line-height: 21px; }
}

@media (max-width: 767px) {
    h1, .h1, h2, .h2 { font-size: 33px; line-height: 37px; }
    h3, .h3 { font-size: 29px; line-height: 33px; }
    h4, .h4 { font-size: 25px; line-height: 29px; }
    h5, .h5 { font-size: 21px; line-height: 25px; }
    h6, .h6 { font-size: 16px; line-height: 20px; }
}

@media (max-width: 576px) {
    h1, .h1, h2, .h2 { font-size: 31px; line-height: 35px; }
    h3, .h3 { font-size: 28px; line-height: 32px; }
    h4, .h4 { font-size: 24px; line-height: 28px; }
    h5, .h5 { font-size: 20px; line-height: 24px; }
    body, p { font-size: 15px; line-height: 22px; }
}

.bkg-site1 { background-color: var(--site1); }
.bkg-site2 { background-color: var(--site2); }
.bkg-site3 { background-color: var(--site3); }
.bkg-site4 { background-color: var(--site4); }
.bkg-site5 { background-color: var(--site5); }
.bkg-light { background-color: var(--light); }

.text-site1 { color: var(--site1); }
.text-site2 { color: var(--site2); }
.text-site3 { color: var(--site3); }
.text-site4 { color: var(--site4); }
.text-site5 { color: var(--site5); }

.button { background-color: transparent; border: 1px solid var(--site2); color: var(--site2); display: inline-block; padding: 8px 20px 9px; }
.button.filled { background-color: var(--site2); color: var(--white); }
.button.button-white { border-color: var(--white); color: var(--white); }
.button.button-site2 { background-color: var(--site2); border-color: var(--site2); color: var(--white); }
.button:hover, .button.button-white:hover { background-color: var(--site2); border-color: var(--site2); color: var(--white); }
.button.filled:hover { background-color: var(--site1); border-color: var(--site1); color: var(--white); }
.button.button-site2:hover { background-color: var(--site1); border-color: var(--site1); color: var(--white); }

.text-link { color: var(--site2); font-weight: 700; }
.text-link:after { content: '\f105'; display: inline-block; font-family: FontAwesome; transform: translateX(7px); -webkit-transform: translateX(7px); -moz-transform: translateX(7px); transition: .5s all ease; -webkit-transition: .5s all ease; -moz-transition: .5s all ease; }
.text-link:hover { color: var(--site1); }
.text-link:hover:after { transform: translateX(12px); -webkit-transform: translateX(12px); -moz-transform: translateX(12px); }

.align-items-center .row { align-items: center; -webkit-align-items: center; -moz-align-items: center; }
.justify-content-center .row { justify-content: center; -webkit-justify-content: center; -moz-justify-content: center; }
.flex-column-reverse .row { -ms-flex-direction: column-reverse!important; flex-direction: column-reverse!important; }

@media (min-width: 993px) {
    .flex-lg-row .row { -ms-flex-direction: row!important; flex-direction: row!important; }
}

.margin-bottom-xs-minus { margin-bottom: -5px; }
.margin-bottom-sm-minus { margin-bottom: -15px; }
.margin-bottom-md-minus { margin-bottom: -30px; }
.margin-bottom-lg-minus { margin-bottom: -45px; }
.margin-bottom-xl-minus { margin-bottom: -60px; }
.margin-bottom-xxl-minus { margin-bottom: -90px; }

.margin-top-xs-minus { margin-top: -5px; }
.margin-top-sm-minus { margin-top: -15px; }
.margin-top-md-minus { margin-top: -30px; }
.margin-top-lg-minus { margin-top: -45px; }
.margin-top-xl-minus { margin-top: -60px; }
.margin-top-xxl-minus { margin-top: -90px; }

@media (max-width: 1199px) {
    .margin-bottom-xxl { margin-bottom: 75px; }
    .margin-left-xxl { margin-left: 75px; }
    .margin-right-xxl { margin-bottom: 75px; }
    .margin-top-xxl { margin-top: 75px; }
    
    .margin-lg-bottom-none { margin-bottom: 0; }
    .margin-lg-bottom-xs-minus { margin-bottom: -5px; }
    .margin-lg-bottom-sm-minus { margin-bottom: -15px; }
    .margin-lg-bottom-md-minus { margin-bottom: -30px; }
    .margin-lg-bottom-lg-minus { margin-bottom: -45px; }
    .margin-lg-bottom-xl-minus { margin-bottom: -60px; }
    .margin-lg-bottom-xxl-minus { margin-bottom: -90px; }

    .margin-lg-top-none { margin-bottom: 0; }
    .margin-lg-top-xs-minus { margin-top: -5px; }
    .margin-lg-top-sm-minus { margin-top: -15px; }
    .margin-lg-top-md-minus { margin-top: -30px; }
    .margin-lg-top-lg-minus { margin-top: -45px; }
    .margin-lg-top-xl-minus { margin-top: -60px; }
    .margin-lg-top-xxl-minus { margin-top: -90px; }

    .padding-lg-bottom-none { padding-bottom: 0; }
    .padding-lg-bottom-xs { padding-bottom: 5px; }
    .padding-lg-bottom-sm { padding-bottom: 15px; }
    .padding-lg-bottom-md { padding-bottom: 30px; }
    .padding-lg-bottom-lg { padding-bottom: 45px; }
    .padding-lg-bottom-xl { padding-bottom: 60px; }
    .padding-lg-bottom-xxl { padding-bottom: 90px; }

    .padding-lg-top-none { padding-bottom: 0; }
    .padding-lg-top-xs { padding-top: 5px; }
    .padding-lg-top-sm { padding-top: 15px; }
    .padding-lg-top-md { padding-top: 30px; }
    .padding-lg-top-lg { padding-top: 45px; }
    .padding-lg-top-xl { padding-top: 60px; }
    .padding-lg-top-xxl { padding-top: 90px; }

    .padding-bottom-xxl { padding-bottom: 75px; }
    .padding-left-xxl { padding-left: 75px; }
    .padding-right-xxl { padding-bottom: 75px; }
    .padding-top-xxl { padding-top: 75px; }
}

@media (max-width: 992px) {
    .margin-bottom-xxl { margin-bottom: 60px; }
    .margin-left-xxl { margin-left: 60px; }
    .margin-right-xxl { margin-bottom: 60px; }
    .margin-top-xxl { margin-top: 60px; }

    .margin-md-bottom-none { margin-bottom: 0; }
    .margin-md-bottom-xs-minus { margin-bottom: -5px; }
    .margin-md-bottom-sm-minus { margin-bottom: -15px; }
    .margin-md-bottom-md-minus { margin-bottom: -30px; }
    .margin-md-bottom-lg-minus { margin-bottom: -45px; }
    .margin-md-bottom-xl-minus { margin-bottom: -60px; }
    .margin-md-bottom-xxl-minus { margin-bottom: -90px; }

    .margin-md-top-none { margin-bottom: 0; }
    .margin-md-top-xs-minus { margin-top: -5px; }
    .margin-md-top-sm-minus { margin-top: -15px; }
    .margin-md-top-md-minus { margin-top: -30px; }
    .margin-md-top-lg-minus { margin-top: -45px; }
    .margin-md-top-xl-minus { margin-top: -60px; }
    .margin-md-top-xxl-minus { margin-top: -90px; }

    .padding-md-bottom-none { padding-bottom: 0; }
    .padding-md-bottom-xs { padding-bottom: 5px; }
    .padding-md-bottom-sm { padding-bottom: 15px; }
    .padding-md-bottom-md { padding-bottom: 30px; }
    .padding-md-bottom-lg { padding-bottom: 45px; }
    .padding-md-bottom-xl { padding-bottom: 60px; }
    .padding-md-bottom-xxl { padding-bottom: 90px; }

    .padding-md-top-none { padding-bottom: 0; }
    .padding-md-top-xs { padding-top: 5px; }
    .padding-md-top-sm { padding-top: 15px; }
    .padding-md-top-md { padding-top: 30px; }
    .padding-md-top-lg { padding-top: 45px; }
    .padding-md-top-xl { padding-top: 60px; }
    .padding-md-top-xxl { padding-top: 90px; }

    .padding-bottom-xxl { padding-bottom: 60px; }
    .padding-left-xxl { padding-left: 60px; }
    .padding-right-xxl { padding-bottom: 60px; }
    .padding-top-xxl { padding-top: 60px; }
}

@media (min-width: 1300px) {
    .container { max-width: 1240px; }
}

@media (min-width: 1400px) {
    .container { max-width: 1340px; }
}

@media (max-width: 992px) {
    .rm-pb-mobile { padding-bottom: 0!important; }
    .rm-px-mobile { padding-left: 0!important; padding-right: 0!important; }
}


/*** Flexslider ***/
.flexslider { background-color: transparent; border: 0; border-radius: 0; margin-bottom: 0; }

.flex-control-paging li a { background-color: rgba(0,0,0,0.15); border: 2px solid transparent; box-shadow: none; }
.flex-control-paging li a.flex-active { background-color: transparent; border-color: var(--site2); }

/*** Slick Slider ***/
.slick-dots { bottom: -40px; }
.slick-dots li { width: 12px; }
.slick-dots li button { background-color: var(--site5); border: 2px solid transparent; border-radius: 50%; display: inline-block; height: 8px; padding: 0; width: 8px; }
.slick-dots li button:before { content: none; }
.slick-dots li.slick-active button { background-color: transparent; border-color: var(--site2);  height: 10px; width: 10px; }

/*** Content ***/
content { display: inline-block; min-height: calc(100vh - 399px); width: 100%; }

@media (max-width: 1199px) {
    content { min-height: calc(100vh - 386px); }
}


/*********************
 HEADER
 *********************/
#header { display: inline-block; left: 0; padding-bottom: 15px; padding-top: 15px; position: absolute; top: 0; width: 100%; z-index: 999999999; transition: .5s all ease; -webkit-transition: .5s all ease; -moz-transition: .5s all ease; }
#header .brand-logo, #header .brand-logo img { display: inline-block; max-width: 300px; width: 100%; }
#header ul { margin-bottom: 0; padding-bottom: 0; }

#header.fixed { background-color: var(--site1); position: fixed; }
#header.fixed .brand-logo, #header.fixed .brand-logo img { max-width: 200px; }

#header .actions { display: inline-block; }
#header .actions #favourites { display: inline-block; margin-right: 3px; }
#header .actions #favourites a { background-color: transparent; border-radius: 50%; color: var(--white); display: inline-block; font-size: 16px; height: 32px; line-height: 32px; padding: 0; text-align: center; width: 32px; }
#header .actions #favourites a:hover { background-color: var(--site2); color: var(--white); }

#header .actions ul { display: inline-block; list-style: none; padding-left: 0; }
#header .actions ul > li { display: inline-block; margin: 0 1px; }
#header .actions ul > li > a { background-color: var(--white); border-radius: 50%; color: var(--site2); display: inline-block; font-size: 16px; height: 32px; line-height: 30px; padding: 0; text-align: center; width: 32px; }
#header .actions ul > li > a .fa { position: relative; top: 1px; }
#header .actions ul > li > a:hover { background-color: var(--site2); color: var(--white); }
#header .actions ul > li:first-child > a { background-color: transparent; color: var(--white); }

@media (min-width: 993px) {
    #header #open-menu { display: none; }

    #header .main-menu { display: inline-block; list-style: none; margin-right: 20px; padding-left: 0; }
    #header .main-menu > li { display: inline-block; margin: 0 12px; padding-block: 10px; }
    #header .main-menu > li:first-child { margin-left: 0; }
    #header .main-menu > li:last-child { margin-right: 0; }
    #header .main-menu > li > a { color: var(--white); font-size: 16px; font-weight: 600; line-height: 21px; }
    #header .main-menu > li.active > a, #header .main-menu > li.active-parent > a, #header .main-menu > li > a:hover { color: #B3CCFC; }
    #header .main-menu > li.parent > a:after { content: '\f0d7'; float: right; font-family: FontAwesome; font-size: 75%; margin-left: 8px; }

    /*** Submenu ***/
    #header .main-menu > li { position: relative; }
    #header .main-menu > li > ul { background-color: rgba(19,29,78,0.7); display: none; list-style: none; padding: 15px 25px; position: absolute; text-align: left; top: 100%; width: 250px; }
    #header .main-menu > li:hover > ul { display: block; }
    #header .main-menu > li > ul > li:not(:last-child) { margin-bottom: 5px; }
    #header .main-menu > li > ul > li > a { color: var(--white); font-size: 14px; line-height: 19px; }
    #header .main-menu > li > ul > li > a:hover, #header .main-menu > li > ul > li.active > a { color: #B3CCFC; }
}

@media (max-width: 1199px) {
    #header .main-menu { margin-right: 10px; }
    #header .main-menu > li { margin: 0 8px; }
    #header .main-menu > li > a { font-size: 15px; line-height: 20px; }
}

@media (max-width: 992px) {
    #header #open-menu { background-color: var(--white); border: 0; border-radius: 50%; box-shadow: none; color: var(--site2); display: inline-block; font-size: 16px; height: 32px; line-height: 32px; margin-left: 2px; padding: 0; position: relative; text-align: center; top: 1px; width: 32px; }
    #header #open-menu:hover { background-color: var(--site2); color: var(--white); }

    #header .main-menu { display: none; }
}

@media (max-width: 576px) {
    #header .col-5 { padding-left: 0; }

    #header .actions #favourites a, #header .actions ul > li > a, #header #open-menu { height: 28px; line-height: 28px; width: 28px; }
    #header .actions ul > li > a { line-height: 26px; }
}


/*********************
 OFFCANVAS
 *********************/
#offCanvas { background-color: var(--site1); display: inline-block; min-height: 100vh; left: 0; overflow-y: auto; padding: 100px; position: fixed; top: 0; width: 100%; z-index: 99999999999999; transform: translateX(100vw); -webkit-transform: translateX(100vw); -moz-transform: translateX(100vw); transition: .5s all ease; -webkit-transition: .5s all ease; -moz-transition: .5s all ease; }
#offCanvas.active { transform: translateX(0); -webkit-transform: translateX(0); -moz-transform: translateX(0); }
#offCanvas #close-menu { background: transparent; border: 0; position: absolute; right: 100px; top: 50px; }
#offCanvas #close-menu:hover { opacity: 0.5; }

#offCanvas .logo { display: inline-block; left: 25px; position: absolute; top: 25px; }

#offCanvas ul.main-menu { list-style: none; padding-left: 0; margin-bottom: 0; }
#offCanvas ul.main-menu li { margin-bottom: 7px; }
#offCanvas ul.main-menu li > a { border-bottom: 2px solid transparent; color: var(--white); font-size: 17px; font-weight: 400; line-height: 21px; }
#offCanvas ul.main-menu li.parent > a:after { content: '\f105'; float: right; font-family: FontAwesome; margin-left: 10px; }
#offCanvas ul.main-menu li.active > a, #offCanvas ul.main-menu li > a:hover { border-color: var(--white); color: var(--white); }

#offCanvas ul.main-menu > li > .dropdown-toggle { cursor: pointer; }
#offCanvas ul.main-menu > li > .dropdown-toggle::after { content: '\f105'; border: 0; font-family: Fontawesome; margin-left: 15px; position: relative; top: -1px; vertical-align: top; }

#offCanvas ul.main-menu + a { color: var(--site1); display: inline-block; font-size: 22px; font-weight: 700; line-height: 26px; margin-top: 30px; }
#offCanvas ul.main-menu + a:hover { color: var(--white); }

#offCanvas ul.main-menu > li > ul { list-style: none; padding: 8px 0 1px 20px; }
#offCanvas ul.main-menu > li > ul > li { margin-bottom: 4px; }
#offCanvas ul.main-menu > li > ul > li > a { font-size: 14px; line-height: 19px; text-transform: none; }

@media (max-width: 992px) {
    #offCanvas { padding: 95px 25px; }
    #offCanvas #close-menu { right: 20px; top: 25px; }
    #offCanvas #close-menu img { height: 27px; }

    #offCanvas .logo img { max-width: 200px; }
    #offCanvas ul.social > li > a { font-size: 30px; line-height: 30px; }

    #offCanvas ul.main-menu li > a, #offCanvas ul.main-menu + a { font-size: 16px; line-height: 20px; }

    #offCanvas ul.social { bottom: 15px; padding-left: 0; left: 20px; position: absolute; }
    #offCanvas ul.social > li { display: inline-block; }
    #offCanvas ul.social > li > a { color: rgba(255,255,255,0.47); font-size: 40px; line-height: 40px; margin: 0 8px }
    #offCanvas ul.social > li > a[href*="facebook"]:hover { color: var(--facebook); }
    #offCanvas ul.social > li > a[href*="instagram"]:hover { color: var(--instagram); }
    #offCanvas ul.social > li > a[href*="twitter"]:hover { color: var(--twitter); }
    #offCanvas ul.social > li > a[href*="wa.me"]:hover { color: var(--whatsapp); }
}

#offCanvas .submenu {
  display: none;
}

#offCanvas .submenu.open {
  display: block;
}

/*********************
 FOOTER
 *********************/
footer p, footer a { color: #6b6b6c; font-size: 15px; line-height: 20px; }
footer a { color: var(--site2); }
footer a:hover { color: var(--site1); }

footer ul, footer ul > li { display: inline-block; list-style: none; }
footer ul { margin-bottom: 0; padding-left: 0; }
footer ul > li { margin: 0 10px; }
footer ul > li:first-child { margin-left: 0; }
footer ul > li:last-child { margin-right: 0; }
footer ul > li > a { color: #6b6b6c; font-weight: 500; }
footer ul > li > a:hover { color: var(--site2); }

footer ul.social > li > a { color: var(--site2); font-size: 24px; }
footer ul.social > li > a[href*="facebook"]:hover { color: var(--facebook); }
footer ul.social > li > a[href*="instagram"]:hover { color: var(--instagram); }
footer ul.social > li > a[href*="twitter"]:hover { color: var(--twitter); }
footer ul.social > li > a[href*="wa.me"]:hover { color: var(--whatsapp); }

footer #copyright { border-top: 1px solid #DDDDDD; }
footer #copyright ul { margin-bottom: 10px; }
footer #copyright p, footer #copyright a { font-size: 13px; line-height: 17px; }
footer #copyright p, footer #copyright p a { color: #979898; font-weight: 600; }
footer #copyright p a:hover { color: var(--site2); }

@media (max-width: 1199px) {
    footer p, footer a { font-size: 14px; line-height: 19px; }
    footer ul > li { margin: 0 8px; }
    footer #copyright p, footer #copyright a { font-size: 12px; line-height: 16px; }
}

@media (max-width: 992px) {
    footer img { margin-bottom: 30px; max-width: 300px; width: 100%; }
    footer .social { margin-top: 25px; }

    footer #copyright { text-align: center; }
    footer #copyright ul { margin-bottom: 15px; }
    footer #copyright p { margin-bottom: 5px; }
}

@media (max-width: 767px) {
    footer ul > li > a { font-size: 14px; line-height: 19px; }

    footer .col-lg-8 .menu { display: grid; grid-template-columns: repeat(2, 1fr); row-gap: 5px; }
    footer .col-lg-8 .menu > li { margin-inline: 0; }
}



/*********************
 HOMEPAGE
 *********************/
#homeSlider { width: 100%; }
#homeSlider:before { content: ''; background-color: var(--site1); display: inline-block; height: 100%; left: 0; mix-blend-mode: multiply; opacity: 0.38; position: absolute; top: 0; width: 100%; z-index: 99; }

#home-row { padding-bottom: 50px; padding-top: 90px; position: relative; overflow: hidden; }
#home-row .row { position: relative; z-index: 9; }
#home-row:after { content: ''; background: url('../img/triangle-bkg.png') no-repeat bottom right; background-size: contain; bottom: 0; height: 100%; position: absolute; right: 0; top: 0; width: 100%; z-index: 0; }

.service-icon { background-color: #E2ECF5; border-radius: 50%; display: inline-block; height: 220px; position: relative; text-align: center; width: 220px; }
.service-icon img { left: 50%; position: absolute; top: 50%; filter: brightness(1); -webkit-filter: brightness(1); -moz-filter: brightness(1); max-width: 170px; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); }
.service-icon, .service-icon img { transition: .5s all ease; -webkit-transition: .5s all ease; -moz-transition: .5s all ease; }
.service-icon:hover { background-color: var(--site1); }
.service-icon:hover img { filter: brightness(100); -webkit-filter: brightness(100); -moz-filter: brightness(100); }

#home-testimonials { background-color: #E2ECF5; padding-top: 140px; padding-bottom: 100px; position: relative; }
#home-testimonials:after { content: ''; background: url('../img/icons/quote-xl-white-icon.png') no-repeat top right; background-size: contain; display: inline-block; height: 100%; position: absolute; right: 0; top: 0; width: 50%; }
#home-testimonials .container { position: relative; z-index: 2; }

#latest-testimonials { margin-top: 35px; }
#latest-testimonials .testimonial { display: inline-block; width: calc(100% - 45px); }
#latest-testimonials p { color: var(--site5); }
#latest-testimonials .name { margin-top: 5px; }

#latest-testimonials .flex-control-nav { text-align: left; }
#latest-testimonials .flex-control-nav > li:first-child { margin-left: 0; }

#latest-testimonials .flex-direction-nav .flex-prev { display: none; }
#latest-testimonials .flex-direction-nav .flex-next { background-color: var(--white); border-radius: 50%; box-shadow: 0 0 8px rgba(0,0,0,0.2); color: var(--site2); display: inline-block; font-size: 22px; height: 30px; line-height: 29px; opacity: 1; right: 0; text-align: center; width: 30px; }
#latest-testimonials .flex-direction-nav .flex-next:hover { background-color: var(--site1); color: var(--white); }
#latest-testimonials .flex-direction-nav .flex-next:before { content: none; }

#featured-properties { margin-bottom: 110px; margin-top: 35px; width: 100%; }
.property-item { display: inline-block; position: relative; width: 100%; }
.property-item .rectangle-img { display: inline-block; float: right; width: 90%; }
.property-item .property-information { background-color: var(--white); bottom: 35px; display: inline-block; left: 0; max-width: 500px; padding: 50px 40px 50px 80px; position: absolute; width: 100%; }
.property-item .property-information h3, .property-item .property-information p { margin-bottom: 3px; }
.property-item .property-information h3 { font-size: 25px; line-height: 29px; }
.property-item .property-information h3 + p { margin-top: 0; }
.property-item .property-information h3 a { color: var(--site5); }
.property-item .property-information h3 a:hover { color: var(--site2); }
.property-item .property-information h4 { font-weight: 700; margin-top: 15px; }
.property-item .property-information .reference { font-size: 14px; line-height: 18px; }
.property-item .property-information .reference + p { margin-top: 15px; }
.property-details { color: var(--site5); font-size: 14px; font-weight: 600; line-height: 18px; }
.property-details img { display: inline-block!important; height: 19px!important; margin-right: 4px; position: relative; top: -3px; width: auto!important; }
.property-details img:not(:first-child) { margin-left: 20px; }

#featured-properties .flex-control-nav { bottom: -70px; }

#featured-properties .flex-direction-nav .flex-prev, #similar-properties-slider .flex-direction-nav .flex-prev { display: none; }
#featured-properties .flex-direction-nav .flex-next, #similar-properties-slider .flex-direction-nav .flex-next { background-color: var(--white); border-radius: 50%; box-shadow: 0 0 8px rgba(0,0,0,0.2); color: var(--site2); display: inline-block; font-size: 26px; height: 36px; line-height: 35px; opacity: 1; right: 30px; text-align: center; width: 36px; }
#featured-properties .flex-direction-nav .flex-next:hover, #similar-properties-slider .flex-direction-nav .flex-next:hover { background-color: var(--site1); color: var(--white); }
#featured-properties .flex-direction-nav .flex-next:before, #s  imilar-properties-slider .flex-direction-nav .flex-next:before { content: none; }

#we-can-help { position: relative; }
#we-can-help:before { content: ''; background-color: rgba(0,0,0,0.5); height: 100%; left: 0; position: absolute; top: 0; width: 50%; z-index: 0; }
#we-can-help:after { content: ''; background: url('../img/logo-img.png') no-repeat center; background-size: contain; display: inline-block; height: 140px; left: 75%; opacity: 0.5; position: absolute; top: 50%; width: 140px; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); }
#we-can-help .col-lg-6 { position: relative; }

@media (min-width: 993px) {
    #homeSlider, #homeSlider .slides,  #homeSlider .slides > li { height: 100vh; }
    #homeSlider + .container { left: 50%; position: absolute; top: 50%; z-index: 999; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); }
    #homeSlider + .container h1 { color: var(--white); }

    #featured-properties { aspect-ratio: 2 / 1; }
    .property-item .rectangle-img { min-height: 550px; }
}

@media (max-width: 1199px) {
    #home-row { padding-top: 75px; }

    .service-icon { height: 190px; width: 190px; }
    .service-icon img { max-height: 90px; max-width: 110px; }
    
    #home-testimonials { padding-bottom: 70px; padding-top: 110px; }

    .property-item .property-information { max-width: 450px; padding: 40px 40px 40px 50px; }
}

@media (max-width: 992px) {
    #homeSlider + .container { margin-top: 35px; }

    #home-row { padding-top: 60px; }

    #home-testimonials { padding-bottom: 60px; padding-top: 90px; }

    .property-item .rectangle-img { min-height: 300px; width: 100%; }
    .property-item .property-information { bottom: 0; max-width: 100%; position: relative; padding: 20px 12px 0; }

    #we-can-help { padding-top: 140px; text-align: center; }
    #we-can-help:before { width: 100%; }
    #we-can-help:after { filter: brightness(0) invert(1); height: 110px; left: 50%; top: 25px; transform: translate(-50%, 0); width: 110px; }
}

@media (max-width: 767px) {
    .service-icon { height: 170px; width: 170px; }
    .service-icon img { max-height: 70px; max-width: 90px; }

    .property-item .rectangle-img { min-height: 250px; }
    .property-details img { height: 17px!important; }
    .property-details img:not(:first-child) { margin-left: 15px; }

    #home-testimonials:after { background-position: center right; opacity: 0.7; }

    #we-can-help:after { filter: brightness(0) invert(1); height: 100px; left: 50%; top: 25px; transform: translate(-50%, 0); width: 100px; }
}


/*********************
 SEARCH
*********************/
#search { background-color: rgba(4, 10, 39, 0.69); display: inline-block; margin-top: 15px; max-width: 1000px; padding: 20px 30px 15px; position: relative; text-align: left; width: 100%; }

#search .availability-buttons { margin-bottom: 15px; }

#search .availability-search-box { margin-bottom: 15px; }
#search .availability-search-box label { cursor: pointer; }
#search .availability-search-box label + label { margin-left: 30px; }
#search .availability-search-box label input[type="radio"] { display: none; }
#search .availability-search-box label { border-bottom: 3px solid transparent; color: rgba(255,255,255,0.65); font-weight: 600; padding-bottom: 3px; transition: .5s all ease; }
#search .availability-search-box label.checked { border-bottom-color: var(--site2); }
#search .availability-search-box label.checked, #search-form .availability-search-box label:hover { color: var(--white); }

#search .availability-buttons, #search .availability-buttons > li { display: inline-block; margin-bottom: 0; margin-left: 0; padding-left: 0; }
#search .availability-buttons > li:not(:last-child) { margin-right: 20px; }
#search .availability-buttons > li label { color: white; font-size: 14px; line-height: 18px; text-transform: uppercase; }

#search .search-fields { display: flex; flex-wrap: wrap; width: calc(100% - 135px); }
#search .search-fields > .field { background-color: white; margin-right: 8px; padding: 7px 17px 9px; position: relative; flex: 1; box-sizing: border-box; }
#search .search-fields > .field:last-child { margin-right: 0; }
#search .search-fields > .field:not(:last-child) { border-right: 1px dotted #C1C1C1; }
#search .search-fields > .field > label { margin-bottom: 0; padding-bottom: 0; position: relative; top: 3px; width: 100%; }
#search .search-fields > .field > label > a { padding-right: 18px; }
#search .search-fields > .field > label > a:after { content: "\f0dd"; color: #707272; font-family: 'Font Awesome 6 Free'; font-size: 9px; font-weight: bold; line-height: 19px; position: absolute; right: 0; top: -3px; }
#search .search-fields > .field .bootstrap-select { width: 90px; }
#search .search-fields > .field .bootstrap-select button { background-color: transparent; border: 0; padding: 0; }

#search .search-fields > .field > label a,
#search .search-fields > .field .bootstrap-select button { color: #2E2F2B; display: block; font-size: 14px; font-weight: normal; line-height: 18px; text-transform: uppercase; }
#search .search-fields > .field > label > a { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

#search input[type="radio"] { appearance: none; background-color: var(--white); border: 2px solid transparent; border-radius: 50%; display: inline-block; margin-right: 2px; height: 12px; position: relative; top: 1px; width: 12px; }
#search input[type="radio"]:checked { background-color: var(--site1); border-color: var(--white); }

#search .selector { background-color: var(--white); border-radius: 0; box-shadow: 0 0 10px rgba(0,0,0,0.15); left: 0; padding: 20px 20px 15px; position: absolute; top: calc(100% + 10px); width: 320px; }
#search .selector:not(.open) { display: none!important; }
#search .selector.open { display: inline-block!important; }

#search .box .dropdown-menu.show { left: 0!important; top: 30px!important; }
#search .dropdown-menu.show { border-radius: 0; left: -18px!important; top: 38px!important; transform: inherit!important; width: 240px; }

#search .selector hr { margin-block: 10px; }

#search .selector .box { display: inline-block; width: 100%; }
#search .selector .box + .box { margin-top: 10px; }
#search .selector p, #search .selector label { color: #2E2F2B; font-size: 15px; line-height: 20px; }
#search .selector p { display: inline-block; float: left; margin-bottom: 0; padding-bottom: 0; position: relative; top: 2px; }
#search .selector label { margin-bottom: 5px; padding-bottom: 0; width: 100%; }

#search .search-fields > .field .selector .bootstrap-select { width: 100%; }

#search input[type="checkbox"].slide { appearance: none; background-color: #EAEAEA; border-radius: 30px; cursor: pointer; display: inline-block; float: right; height: 22px; position: relative; width: 42px; transition: .5s all ease; -webkit-transition: .5s all ease; -moz-transition: .5s all ease; }
#search input[type="checkbox"].slide:before { content: "\f00d"; background-color: #ffffff; border: 1px solid #cccccc; border-radius: 50%; color: #333333; display: inline-block; font-family: 'Font Awesome 6 Free'; font-size: 12px; font-weight: bold; height: 22px; left: -1px; line-height: 20px; position: absolute; text-align: center; top: 0; width: 22px; transition: .5s all ease; -webkit-transition: .5s all ease; -moz-transition: .5s all ease; }
#search input[type="checkbox"].slide:checked { background-color: var(--site1); }
#search input[type="checkbox"].slide:checked:before { content: "\f00c"; color: #1DBDBC; left: 20px; }

#search .quantity { display: inline-block; float: right; }
#search .quantity > input { border: 0; color: #000000; font-size: 14px; line-height: 19px; text-align: center; width: 32px; }
#search .quantity > input::placeholder { color: #000000; }
#search .quantity > button { background: transparent; border: 1px solid #cccccc; border-radius: 3px; cursor: pointer; display: inline-block; height: 22px; line-height: 19px; padding: 0; text-align: center; width: 22px; transition: .5s all ease; -webkit-transition: .5s all ease; -moz-transition: .5s all ease; }
#search .quantity > button:hover { background: #cccccc; color: #ffffff; }
#search .quantity > button:focus { outline: 0; }

#search .selector label > input[type="text"] { background: transparent; border: 0; border-bottom: 1px solid rgba(0,0,0,.1); padding: 5px 0 10px; width: 100%; }
#search .selector label > input[type="text"]:focus { border-bottom-color: var(--site1); outline: 0; }

#search .selector .footer-row { background-color: var(--white); margin-top: 15px; }
#search .selector .footer-row .button { float: right; padding: 8px 35px 9px; }
#search .selector .footer-row .button.button-site1 { float: left; }

#search [type="submit"] { border-radius: 0; bottom: 15px; float: right; font-size: 16px; line-height: 21px; padding: 10px 28px; position: absolute; right: 30px; }

@media (max-width: 992px) {
    #search { background-color: rgb(4, 10, 39); }
    #search { margin-left: -12px; max-width: calc(100% + 24px); padding-inline: 20px; width: calc(100% + 24px); }

    #search .search-fields { display: flex; flex-direction: row; flex-wrap: wrap; }
    #search .search-fields > .field { width: calc(50% - 8px); flex: none; margin-bottom: 8px; }
    #search .search-fields > .field:nth-child(2n) { margin-right: 8px; }
}


@media (max-width: 992px) {
    #search .selector { border-radius: 0; position: fixed; height: 100%; left: 0; right: auto; top: 0; width: 100%; z-index: 999999999; }
    #search .selector h4 { border-bottom: 1px solid #eaeaea; color: var(--site2); margin-bottom: 25px; padding-bottom: 10px; }
    #search .selector .close-selector { font-size: 24px; position: absolute; right: 15px; top: 20px; transition: .5s all ease; transform: rotate(0); }
    #search .selector .close-selector:hover { color: var(--site1); transform: rotate(90deg); }
    #search .selector .footer-row { bottom: 15px; left: 20px; position: absolute; width: calc(100% - 40px)!important; }

    #search .dropdown-menu.show { left: 0!important; top: 28px!important; }

    #property-search { margin-top: -50px; }
    #property-search #search { margin-bottom: 45px; }

    #search [type="submit"] { bottom: 21px; padding: 10px 35px; }
}

@media (max-width: 576px) {
    #search .search-fields { width: 100%; }
    #search .search-fields > .field { width: 100%; margin-right: 0; margin-bottom: 8px; }
    #search .search-fields > .field:last-child { margin-bottom: 0; }

    #search [type="submit"] { bottom: inherit; float: inherit; margin-top: 12px; padding: 10px 35px; position: relative; right: inherit; }
}


/*********************
 PAGES
 *********************/
#page-header { height: 480px; position: relative; }
#page-header:before { content: ''; background-color: rgba(4,10,39,0.2); display: block; height: 100%; left: 0; position: absolute; top: 0; width: 100%; }
#page-header:after { content: ''; background: linear-gradient(to bottom, rgba(4,10,39,0.61), transparent); height: 65%; left: 0; position: absolute; top: 0; width: 100%; }
#page-header .container { left: 50%; position: absolute; top: 340px; transform: translateX(-50%); }
#page-header h1 { color: var(--white); }

.breadcrumbs { list-style: none; padding-left: 0; margin-top: 15px; }
.breadcrumbs > li { color: var(--site2); display: inline-block; font-size: 13px; line-height: 17px; }
.breadcrumbs > li, .breadcrumbs > li:first-child > a { color: var(--site2); }
.breadcrumbs > li:not(:last-child):after { content: '/'; margin-inline: 5px; }
.breadcrumbs > li > a { color: var(--site1); }
.breadcrumbs > li > a:hover { color: var(--site5); }

ul.checklist { list-style: none; padding-left: 0; }
ul.checklist > li { padding-left: 26px; position: relative; }
ul.checklist > li:not(:last-child) { margin-bottom: 8px; }
ul.checklist > li:before { content: ''; background: url('../img/icons/check-icon.png') no-repeat center; background-size: contain; display: inline-block; height: 14px; left: 0; position: absolute; top: 5px; width: 14px; }

.video-container > a { background-color: var(--site2); border-radius: 50%; display: inline-block; height: 80px; left: 50%; position: absolute; top: 50%; transform: scale(1) translate(-50%, -50%); width: 80px; }
.video-container > a:before { content: ''; border-bottom: 15px solid transparent; border-left: 30px solid var(--white); border-top: 15px solid transparent; left: 50%; position: absolute; top: 50%; transform: translate(-50%, -50%); }
.video-container > a:hover { transform: scale(1.1) translate(-50%, -50%); }

.video-modal { background-color: rgba(0,0,0,0.9); display: none; height: 100%; left: 0; padding-bottom: 50px; padding-top: 120px; overflow-y: auto; position: fixed; top: 0; width: 100%; z-index: 9999999999; }
.video-modal.active { display: inline-block; }
.video-modal button { background-color: transparent; border: 0; box-shadow: none; }
.video-modal .close-modal { display: inline-block; position: absolute; right: 50px; top: 100px; z-index: 9999999999; }
.video-modal .close-modal:hover { opacity: 0.6; }

.virtual-tour-modal { background-color: rgba(0,0,0,0.9); display: none; height: 100%; left: 0; padding-bottom: 50px; padding-top: 120px; overflow-y: auto; position: fixed; top: 0; width: 100%; z-index: 9999999999; }
.virtual-tour-modal.active { display: inline-block; }
.virtual-tour-modal button { background-color: transparent; border: 0; box-shadow: none; }
.virtual-tour-modal .close-virtual-tour-modal { display: inline-block; position: absolute; right: 50px; top: 100px; z-index: 9999999999; }
.virtual-tour-modal .close-virtual-tour-modal:hover { opacity: 0.6; }

#propertyVideo { height: 100%; position: absolute; top: 0; width: 100%; }

.img-b-textbox { background-color: #F2F5FC; display: inline-block; float: right; max-width: 580px; padding: 50px 45px; position: relative; text-align: right; top: -55px; }
.img-b-textbox h6 { color: var(--black); font-family: 'Trajan Pro', serif; }
.img-b-textbox *:last-child { margin-bottom: 0; }

details { border-bottom: 1px dashed var(--site2); padding-block: 15px; position: relative; }
details:after { content: ''; border: 2px solid var(--site2); border-radius: 50%; display: inline-block; height: 28px; line-height: 28px; position: absolute; right: 0; text-align: center; top: 13px; width: 28px; }
details summary { color: var(--site5); font-family: 'Trajan Pro', serif; font-size: 19px; line-height: 24px; padding-right: 40px; position: relative; text-transform: uppercase; }
details summary::marker { content: none; }
details summary:before, details summary:after { content: ''; background-color: var(--site2); border-radius: 2px; display: inline-block; position: absolute; }
details summary:before { height: 3px; right: 6.5px; top: 11px; width: 15px; }
details summary:after { height: 15px; right: 13px; top: 5px; width: 3px; }
details[open] summary:after { background-color: transparent; }
details[open] summary { margin-bottom: 10px; }

.staff-listing { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; list-style: none; padding-left: 0; }
.staff-listing .bkg-cover { margin-bottom: 20px; filter: grayscale(0); transition: .5s all ease; }
.staff-listing .bkg-cover:after { content: ''; background: url('../img/logo-img.png') no-repeat center; background-size: contain; bottom: 0; display: block; height: 82px; position: absolute; right: 0; width: 82px; filter: brightness(0) invert(1); }
.staff-listing > li:hover .bkg-cover { filter: grayscale(0.5); }
.staff-listing .bkg-cover > a { display: block; height: 100%; left: 0; position: absolute; top: 0; width: 100%; }
.staff-listing h5 { color: var(--site2); margin-bottom: 10px; }

.lightboxOverlay { z-index: 999999999999; }
.lightbox { z-index: 99999999999; }

@media (max-width: 1199px) {
    #page-header { height: 450px; }
    #page-header .container { top: 310px; }

    .video-container > a { height: 75px; width: 75px; }
    .video-modal { padding-top: 100px; }
    .video-modal .close-modal { right: 30px; top: 30px; }

    .img-b-textbox { padding: 45px 40px; }

    details summary { font-size: 18px; line-height: 23px; }

    details:after { height: 26px; line-height: 26px; width: 26px; }
    details summary:before { height: 2px; right: 7px; top: 10px; width: 12px; }
    details summary:after { height: 12px; right: 12px; top: 5px; width: 2px; }
}

@media (max-width: 992px) {
    #page-header { height: 400px; }
    #page-header .container { top: 270px; }

    .video-container > a { height: 70px; width: 70px; }
    .video-container > a:before { border-bottom-width: 13px; border-left-width: 24px; border-top-width: 13px; }

    .video-modal .close-modal { right: 20px; top: 20px; }
	.video-modal .close-modal img { width: 27px; }

    .img-b-textbox { padding: 40px 35px; text-align: left; }

    details summary { font-size: 17px; line-height: 22px; }

    .staff-listing { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 767px) {
    #page-header { height: 350px; }
    #page-header .container { top: 230px; }
    
    .video-container > a { height: 60px; width: 60px; }
    .video-container > a:before { border-bottom-width: 11px; border-left-width: 22px; border-top-width: 11px; }

    .img-b-textbox { margin-bottom: 40px; padding: 35px 30px; top: 0; }

    details:after { height: 24px; width: 24px; }
    details summary { font-size: 16px; line-height: 21px; }
    details summary:before { height: 2px; right: 6px; top: 9px; width: 12px; }
    details summary:after { height: 12px; right: 11px; top: 4px; width: 2px; }
}

@media (max-width: 576px) {
    #page-header { height: 300px; }
    #page-header .container { top: 190px; }
    #page-header h1 { font-size: 28px; line-height: 32px; }

    .video-modal .close-modal { right: 15px; top: 15px; }

    .img-b-textbox { padding: 30px 25px; }

    .staff-listing { grid-template-columns: 1fr; }
}


/*********************
 PROPERTIES
 *********************/
#properties-search-container #search-form { margin-top: 0; }

.properties-controls .select2-container { border: 1px solid #b6b7b7; border-radius: 0; color: var(--site5); display: inline-block; font-weight: bold; max-width: 200px; width: 100%; }

/**** Pagination ****/
#paginator { padding: 0; }

#paginator ul.paginator { display: inline-block; list-style: none; margin: 0; padding: 0; }
#paginator ul.paginator li { display: inline-block; margin: 0 5px; }
#paginator ul.paginator li a { background-color: #FFF; color: #666; border-radius: 50%; display: block; height: 30px; padding-top: 1px; text-decoration: none;  transition: background-color 0.3s; width: 30px; }
#paginator ul.paginator li span.selected { background-color: var(--site2); border-radius: 50%; color: white; display: block; font-weight: bold; height: 30px; padding-top: 1px; width: 30px; }
#paginator ul.paginator li a:hover { background-color: var(--site2); color: white; }

@media (max-width: 1199px) {
    .properties-controls select.form-control { font-size: 15px; line-height: 20px; max-width: 140px; }
}

@media (min-width: 993px) {
    #properties-search-container { margin-top: -75px; position: relative; z-index: 9; }
}

@media (max-width: 992px) {
    .properties-controls h3 { font-size: 26px; line-height: 30px; }
    .properties-controls select.form-control { font-size: 14px; line-height: 19px; max-width: 130px; }

    .pagination { margin-top: 10px; }
    .pagination > .page-item > .page-link { font-size: 13px!important; height: 26px; line-height: 24px!important; margin-left: 2px; margin-right: 2px; width: 26px; }
}

@media (max-width: 767px) {
    .properties-controls h3 { font-size: 22px; line-height: 26px; }
    .properties-controls h3 + p { font-size: 14px; line-height: 18px; }
    .properties-controls select.form-control { font-size: 13px; line-height: 18px; max-width: 120px; }

	.pagination > .page-item > .page-link { padding-inline: 10px; width: auto; }
}

@media (max-width: 576px) {
    .properties-controls h3 { font-size: 19px; line-height: 23px; }
    .properties-controls h3 + p { font-size: 13px; line-height: 17px; }
    .properties-controls select.form-control { font-size: 12px; line-height: 17px; }
}

/*********************
 PROPERTY DETAILS
 *********************/
#property-details .main-image { height: 85vh; position: relative; }
#property-details .main-image:before { content: ''; background-color: rgba(4,10,39,0.2); display: block; height: 100%; left: 0; position: absolute; top: 0; width: 100%; }
#property-details .main-image:after { content: ''; background: linear-gradient(to bottom, rgba(4,10,39,0.61), transparent); height: 65%; left: 0; position: absolute; top: 0; width: 100%; }
#property-details .main-image img { height: 100%; left: 0; object-fit: cover; position: absolute; top: 0; width: 100%; }
#property-details .main-image .container { bottom: 15px; left: 50%; position: absolute; transform: translateX(-50%); }
#property-details .main-image button { appearance: none; background-color: transparent; border: 0; box-shadow: 0; color: var(--white); font-size: 15px; font-weight: 500; }
#property-details .main-image button i { background-color: var(--site2); border-radius: 50%; color: var(--white); display: inline-block; font-size: 14px; height: 30px; line-height: 30px; margin-right: 5px; text-align: center; width: 30px; transition: .5s all ease; }
#property-details .main-image button:hover i { background-color: var(--site5); }

#property-details h2.h3 { color: var(--site5); margin-bottom: 20px; }

.separator { border-bottom: 1px dashed var(--site2); margin-block: 30px; }

#property-details dl { display: inline-block; float: left; margin-bottom: 0; margin-top: 10px; padding-left: 0; width: 100%; }
#property-details dl > dt, #property-details dl > dd { display: inline-block; float: left; font-size: 14px; line-height: 18px; text-align: left; }
#property-details dl > dt { color: var(--site2); font-weight: bold; width: 150px; }
#property-details dl > dd { width: calc(100% - 150px); }

ul.columns { column-count: 2; margin-bottom: 35px; }

#district-map { height: 380px; margin-bottom: 30px; }

#property-details .p-sticky { left: 0; padding-top: 40px; position: sticky; top: 50px; }

#property-details .p-sticky ul, #property-details .p-sticky ul > li, #property-details .p-sticky ul > li > a { display: inline-block; }
#property-details .p-sticky ul { list-style: none; padding-left: 0; width: 100%; }

#property-details .buttons { margin-bottom: 25px; }
#property-details .buttons > li, #property-details .buttons > li > a { width: 100%; }
#property-details .buttons > li:not(:last-child) { margin-bottom: 10px; }
#property-details .buttons > li > a { text-align: center; text-transform: uppercase; }
#property-details .buttons > li > a.button { border-color: var(--text); color: var(--site5); padding-block: 12px; }
#property-details .buttons > li > a.button.filled { border-color: var(--site2); color: var(--white); font-family: 'Trajan Pro', serif; }
#property-details .buttons > li > a.button:hover { background-color: var(--site5); border-color: var(--site5); color: var(--white); }

#property-details .actions > li { float: left; }
#property-details .actions > li:not(:last-child) { margin-right: 6px; }
#property-details .actions > li:last-child { margin-left: 10px; }
#property-details .actions > li > a { line-height: 34px; }
#property-details .actions .rounded { background-color: var(--site2); border-radius: 50%!important; color: var(--white); font-size: 15px; height: 34px; text-align: center; width: 34px; }
#property-details .actions .rounded:hover { background-color: var(--site5); }
#property-details .actions > li > a:not(.rounded) { color: var(--text); font-size: 15px; }
#property-details .actions > li > a:not(.rounded) i { color: var(--site2); display: inline-block; font-size: 20px; margin-right: 8px; position: relative; top: 2px; }
#property-details .actions > li > a:not(.rounded):hover { color: var(--site5); }

#similar-properties-slider { margin-bottom: 30px; margin-top: 20px; }
#similar-properties-slider .flex-control-nav { bottom: -60px; }

@media (max-width: 1299px) {
    #property-details .main-image { height: 80vh; }

    #district-map { height: 350px; }
}

@media (min-width: 993px) {
    #property-details .property { position: relative; z-index: 9; }
    #property-details .property .col-lg-8 { background-color: var(--white); margin-top: -90px; padding: 50px 45px; }

    #property-details .property .col-lg-8 .separator { margin-left: -15px; width: calc(100% + 30px); }
}

@media (max-width: 992px) {
    #property-details .main-image { height: 50vh; }

    #property-details .property .col-lg-8 { padding-top: 30px; }
    #property-details .property .price { margin-bottom: 0; margin-top: 20px; padding-bottom: 0; }

    #district-map { height: 300px; }
}

@media (max-width: 767px) {
    #property-details .main-image { height: 350px; }

    #district-map { height: 250px; }
}

@media (max-width: 576px) {
    #property-details .main-image { height: 270px; }
}


/*********************
 STAMP DUTY
 *********************/
#stampDuty label { color: var(--site2); font-weight: 600; }
#stampDuty .form-control { background-color: transparent; border: 0; border-bottom: 1px solid #DDDDDD; border-radius: 0; color: var(--site5); padding: 10px 0; width: 100%; }
#stampDuty .form-control:focus { border-color: var(--site2); box-shadow: none; outline: 0; }

#stampDuty .white-box { background-color: var(--white); margin-top: 30px; padding: 30px; }

@media (max-width: 1299px) {
    #stampDuty label, #stampDuty .form-control { font-size: 15px; line-height: 20px; }
}

@media (max-width: 992px) {
    #stampDuty label, #stampDuty .form-control { font-size: 14px; line-height: 19px; }
    #stampDuty .white-box { padding: 30px 25px; }
}

@media (max-width: 576px) {
    #stampDuty .white-box { padding: 25px 20px; }
}


/*********************
 TESTIMONIALS
 *********************/
#testimonials-listing { list-style: none; margin-left: -15px; margin-top: 15px; padding-left: 0; width: cacl(100% + 30px); }
#testimonials-listing > li { margin-inline: 15px; padding: 30px; position: relative; width: calc(50% - 30px); }
#testimonials-listing > li:after { content: ''; background: url('../img/icons/right-quote-icon.png') no-repeat top right; background-size: contain; display: inline-block; height: 100%; position: absolute; right: 0; top: 0; width: 100px; z-index: 0; }
#testimonials-listing > li * { color: var(--site5); position: relative; z-index: 1; }

@media (max-width: 992px) {
    #testimonials-listing { margin-left: 0; }
    #testimonials-listing > li { margin-inline: 0; width: 100%; }
}


/*********************
 CONTACT
 *********************/
#contact-map { height: 480px; position: relative; }
#contact-map:before { content: ''; background-color: rgba(4,10,39,0.2); display: block; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 9999; }
#contact-map:after { content: ''; background: linear-gradient(to bottom, rgba(4,10,39,0.61), transparent); height: 65%; left: 0; position: absolute; top: 0; width: 100%; z-index: 9999; }

.text-with-icon { margin-bottom: 20px; padding-left: 34px; position: relative; }
.text-with-icon:before { content: ''; color: var(--site2); font-family: 'FontAwesome'; font-size: 22px; left: 0; position: absolute; top: 0; }
.text-with-icon.clock:before { content: "\f017"; }
.text-with-icon.envelope:before { content: "\f0e0"; }
.text-with-icon.phone:before { content: "\f095"; font-weight: 900; }
.text-with-icon.map:before { content: "\f3c5"; font-weight: 900; }
.text-with-icon.whatsapp:before { content: "\f232"; font-size: 25px; }
.text-with-icon p, .text-with-icon p > a { color: var(--text); }
.text-with-icon p a:hover { color: var(--site2); }

.form-group { margin-bottom: 15px; }

.light-form .form-control { background-color: transparent; border: 0; border-bottom: 1px solid #37406F; border-radius: 0; color: var(--white); padding: 10px 0; }
.light-form .form-control::placeholder { color: var(--white); }
.light-form .form-control:focus { border-color: var(--white); box-shadow: none; outline: 0; }

@media (max-width: 1199px) {
    #contact-map { height: 450px; }
}

@media (max-width: 992px) {
    #contact-map { height: 400px; }
}

@media (max-width: 767px) {
    #contact-map { height: 350px; }
}

@media (max-width: 576px) {
    #contact-map { height: 300px; }
}


/***********************
 SOLOMON MODAL
 ***********************/
.solomon-modal { background-color: rgba(0,0,0,0.6); height: 100%; left: 0; min-height: 100vh; overflow: auto; position: fixed; top: 0; width: 100%; z-index: 9999999999999999; }
.solomon-modal .modal-content { background-color: var(--white); display: inline-block; left: 50%; max-width: 800px; padding: 80px; top: 50%; transform: translate(-50%, -50%); width: 100%; }

.solomon-modal .modal-content .close-modal { background-color: transparent; border: 0; box-shadow: none; height: 30px; position: absolute; right: 30px; top: 30px; width: 30px; }
.solomon-modal .modal-content .close-modal:before, .solomon-modal .modal-content .close-modal:after { content: ''; background-color: var(--text); border-radius: 2px; height: 3px; left: 0; position: absolute; top: 50%; transform: translateX(-50%); width: 30px; transition: .5s all ease; }
.solomon-modal .modal-content .close-modal:before { transform: rotate(45deg); }
.solomon-modal .modal-content .close-modal:after { transform: rotate(-45deg); }
.solomon-modal .modal-content .close-modal:hover:before, .solomon-modal .modal-content .close-modal:hover:after { background-color: var(--site2); }
.solomon-modal .modal-content .close-modal:hover:before { transform: rotate(-45deg); }
.solomon-modal .modal-content .close-modal:hover:after { transform: rotate(-135deg); }

.solomon-modal .modal-content h2 { color: var(--site5); margin-bottom: 30px; }
.solomon-modal .property-info { border: 1px dashed var(--text); margin-bottom: 30px; padding: 15px; }

.solomon-modal .form-control { border: 0; border-bottom: 1px solid #DDDDDD; border-radius: 0; padding: 10px 0; }
.solomon-modal .button { padding-block: 14px; }

.solomon-modal #stampDuty .white-box { background-color: #f2f2f2; }

@media (max-width: 1299px) {
    .solomon-modal .modal-content { padding: 70px; }
}

@media (max-width: 992px) {
    .solomon-modal .modal-content { padding: 60px; }
    .solomon-modal .modal-content .close-modal {  height: 25px; right: 20px; top: 16px; width: 25px; }
    .solomon-modal .modal-content .close-modal:before, .solomon-modal .modal-content .close-modal:after { width: 25px; }
}

@media (max-width: 767px) {
    .solomon-modal .modal-content { min-height: 100vh; left: 0; padding: 60px 45px; top: 0; transform: translate(0, 0); width: 100%; }
}

@media (max-width: 576px) {
    .solomon-modal .modal-content { padding: 60px 20px; }
}


/***********************
 SHARE MODAL
 ***********************/
.share-modal { background-color: rgba(0,0,0,0.9); height: 100%; left: 0; min-height: 100vh; overflow: auto; position: fixed; top: 0; width: 100%; z-index: 9999999999999999; }
.share-modal > .modal-box { background-color: #ffffff; border-radius: 10px; display: inline-block; height: auto; max-width: 300px; position: absolute; width: 100%; }
.share-modal > .modal-box ul { display: inline-block; list-style: none; margin: 0 15px; padding: 0; width: calc(100% - 30px); }
.share-modal > .modal-box ul > li { display: inline-block; width: 100%; }
.share-modal > .modal-box ul > li > a { border-bottom: 1px solid #cccccc; color: #000000; display: inline-block; font-size: 18px; line-height: 22px; padding: 15px 0; width: 100%; }
.share-modal > .modal-box ul > li:last-child > a { border-bottom: 0; }
.share-modal > .modal-box ul > li > a:hover { color: #000000; }
.share-modal > .modal-box ul > li > a .fa { margin-right: 10px; }
.share-modal > .modal-box ul > li > a small { color: #1DBDBC!important; }
.share-modal > .modal-box > .header { border-bottom: 1px solid #cccccc; display: inline-block; margin-bottom: 0; padding: 15px 25px 15px; width: 100%; }
.share-modal > .modal-box > .header > h5 { display: inline-block; float: left; font-size: 24px; line-height: 28px; margin-bottom: 0; margin-top: 0; max-width: calc(100% - 45px); position: relative; top: 3px; }
.share-modal > .modal-box > .header > a.close-modal { border: 1px solid #cccccc; border-radius: 5px; color: #333333; display: inline-block; float: right; font-size: 20px; height: 36px; line-height: 34px; padding: 0; text-align: center; width: 36px; }
.share-modal > .modal-box > .header > a.close-modal:hover { background-color: #cccccc; color: #ffffff; }

.share-modal > .modal-box > .content { display: inline-block; padding: 20px 15px; width: 100%; }
.share-modal > .modal-box > .content h5 { color: #999999; }

.share-modal input[type="text"], .share-modal input[type="email"] { border: 1px solid #eaeaea; border-radius: 6px; display: inline-block; font-size: 16px; line-height: 20px; padding: 10px; width: 100%; }
.share-modal input[type="text"]:focus, .share-modal input[type="email"]:focus { border-color: var(--site2); box-shadow: none; outline: 0; }

@media (min-width: 577px) {
    .share-modal > .modal-box { left: 50%; top: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); }
}

@media (max-width: 576px) {
    .share-modal > .modal-box { min-height: 100vh; left: 0; max-width: 100%; top: 0; width: 100%; }
}
