/*@import "https://use.typekit.net/rqw5pwl.css";*/

@import "bootstrap.min.css";
@import "swiper-bundle.min.css";
@import "selectric.css";


@import url("https://p.typekit.net/p.css?s=1&k=rqw5pwl&ht=tk&f=12393.12394.12395.12396.12397.12398.12399&a=3621220&app=typekit&e=css");

@font-face {
font-family:"classico-urw";
src:url("https://use.typekit.net/af/9ad045/000000000000000077359ef1/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff2"),url("https://use.typekit.net/af/9ad045/000000000000000077359ef1/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff"),url("https://use.typekit.net/af/9ad045/000000000000000077359ef1/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("opentype");
font-display:swap;font-style:normal;font-weight:400;font-stretch:normal;
}

@font-face {
font-family:"classico-urw";
src:url("https://use.typekit.net/af/204de9/000000000000000077359ef5/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3") format("woff2"),url("https://use.typekit.net/af/204de9/000000000000000077359ef5/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3") format("woff"),url("https://use.typekit.net/af/204de9/000000000000000077359ef5/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3") format("opentype");
font-display:swap;font-style:normal;font-weight:500;font-stretch:normal;
}

@font-face {
font-family:"classico-urw";
src:url("https://use.typekit.net/af/cd0279/000000000000000077359ef9/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff2"),url("https://use.typekit.net/af/cd0279/000000000000000077359ef9/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff"),url("https://use.typekit.net/af/cd0279/000000000000000077359ef9/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("opentype");
font-display:swap;font-style:normal;font-weight:700;font-stretch:normal;
}

@font-face {
font-family:"classico-urw";
src:url("https://use.typekit.net/af/8f21e2/000000000000000077359efc/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n9&v=3") format("woff2"),url("https://use.typekit.net/af/8f21e2/000000000000000077359efc/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n9&v=3") format("woff"),url("https://use.typekit.net/af/8f21e2/000000000000000077359efc/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n9&v=3") format("opentype");
font-display:swap;font-style:normal;font-weight:900;font-stretch:normal;
}

@font-face {
font-family:"classico-urw";
src:url("https://use.typekit.net/af/4394c3/000000000000000077359efe/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3") format("woff2"),url("https://use.typekit.net/af/4394c3/000000000000000077359efe/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3") format("woff"),url("https://use.typekit.net/af/4394c3/000000000000000077359efe/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3") format("opentype");
font-display:swap;font-style:italic;font-weight:400;font-stretch:normal;
}

@font-face {
font-family:"classico-urw";
src:url("https://use.typekit.net/af/d1a0f0/000000000000000077359f02/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3") format("woff2"),url("https://use.typekit.net/af/d1a0f0/000000000000000077359f02/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3") format("woff"),url("https://use.typekit.net/af/d1a0f0/000000000000000077359f02/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3") format("opentype");
font-display:swap;font-style:italic;font-weight:500;font-stretch:normal;
}

@font-face {
font-family:"classico-urw";
src:url("https://use.typekit.net/af/0ecd84/000000000000000077359f04/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3") format("woff2"),url("https://use.typekit.net/af/0ecd84/000000000000000077359f04/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3") format("woff"),url("https://use.typekit.net/af/0ecd84/000000000000000077359f04/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3") format("opentype");
font-display:swap;font-style:italic;font-weight:700;font-stretch:normal;
}

.tk-classico-urw { font-family: "classico-urw",sans-serif; }

/*

@import "font-awesome.min.css";

@font-face {
	font-family: "Font Awesome 6 Pro";
    font-display: swap;
}
*/


/********************************
	Developed by AXA Studios
	The Creative Engine
	http://www.axastudios.com
*********************************/

:root {
    --font-family: "classico-urw", Arial, Helvetica, sans-serif;

	--main-color: #262626;
	--main-color-rgb: 38, 38, 38;
	--dark-main-color: #2A2624 ;
/*	--light-main-color: #34383F;*/
    
	--sub-color: #B1997F;
	--sub-color-rgb: 177, 153, 127;
	--light-sub-color: #B1997F;

	--bg-color: #F2F2F2;
	--light-bg-color: #FAFAFA;
	--dark-bg-color: #E1E1E1;
	--sub-bg-color: #e5e0d9;

	--light-grey-color: #95989E;
	--grey-color: #566171;

	--text-color: #262626;
	--med-text-color: #7e8084;	
	--light-text-color: #828282;	
	--white-text-color: #F2F2F2;	
	
	--input-bg-color: #FFFFFF;
	--input-highlight-color: #FAFAFA;
	--border-color: #F2F2F2;
	--dark-border-color: #eaeaea;	
	--alpha-border-color: rgba(38, 38, 38, 0.16);

	--black-color: #000000;
	--white-color: #ffffff;
	--white-alpha-color: rgba(255, 255, 255, 0.16);
/*	--white-alpha-16: rgba(255, 255, 255, 0.16);*/
    
	--hover-white-alpha-color: rgba(255, 255, 255, 0.48);
    --chip-white-alpha-color: rgba(255, 255, 255, 0.32);
	--main-white-alpha-color: rgba(255, 255, 255, 0.24);
	--light-white-alpha-color: rgba(255, 255, 255, 0.08);
    
	--dark-alpha-color: rgba(47, 44, 42, 0.16);

	--red-color: #e93a3a;
	--green-color: #73BB59;
	--wa-green-color: #25D366;
	--blue-color: #3F7FA8;
	--yellow-color: #F3BB00;

	--main-shadow: 0px 8px 24px rgba(0, 0, 0, 0.16);
	--text-shadow: 0 4px 16px rgba(0, 0, 0, 0.48);
	--chip-text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.64);
	--button-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.08);
    
    --main-color-gradient: linear-gradient(90deg, var(--main-color) 0%, var(--dark-main-color) 100%);
	--line-gradient: linear-gradient(90deg, rgba(231, 231, 231, 0.08) 0%, #E7E7E7 50%, rgba(231, 231, 231, 0.08) 100%);
    
    --dark-linear-gradient: linear-gradient(180deg, rgba(38, 38, 38, 0) 0%, rgba(38, 38, 38, 1) 100%);

    --dark-button-gradient: linear-gradient(90deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.02) 100%);
    --light-button-gradient: linear-gradient(180deg, var(--white-color) 0%, #D2D2D2 100%);
    
	--doc-height: 100%;
    
    --offset-width: calc(100% - ((100% - 1440px) / 2 ));  
    --offset-width-pad: calc(100% - ((100% - 1536px) / 2 ));  

	--xxs-pad: 4px;
	--xs-pad: 8px;
	--sm-pad: 12px;
	--mid-pad: 16px;
	--main-pad: 24px;
	--med-pad: 32px;
	--40-pad: 40px;
	--lg-pad: 48px;
	--xl-pad: 72px;
	--xxl-pad: 96px;
	--max-pad: 192px;

	--xs-neg: -8px;
	--sm-neg: -12px;
	--mid-neg: -16px;
	--main-neg: -24px;
	--lg-neg: -48px;

	--sm-radius: 5px;	
	--main-radius: 10px;
	--input-radius: 0px;
	--med-radius: 15px;
	--lg-radius: 48px;

	--xxl-font: 24px;
	--sm-font: 12px;
	--main-font: 14px;
	--lg-font: 16px;
	--input-font: 14px;
	--button-font: 14px;

	--sm-icon-font: 12px;
	--icon-font: 16px;
	--mid-icon-font: 24px;
	--main-icon-font: 32px;
	--40-icon-font: 40px;
	--lg-icon-font: 48px;
	--xl-icon-font: 64px;
}

/* MAIN STYLES *****************************/

html {
	overflow-y: scroll;
	margin: 0;
	padding: 0;
	/*	scroll-behavior: auto!important;*/
	scroll-behavior: smooth !important;
}
body {
	margin: 0;
	padding: 0;
	background: var(--white-color);
	font-family: var(--font-family);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.6;
	color: var(--text-color);
	font-smoothing: subpixel-antialiased;
	-webkit-font-smoothing: subpixel-antialiased;
    font-display: swap;
}

/* TEXT & LINK STYLES *****************************/

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 500;
	margin: 0px;
	font-family: var(--font-family);
    text-transform: uppercase;
}
h1 {
	font-size: 40px;
	font-weight: 500;
	line-height: 1.1;
	margin-bottom: var(--xxs-pad);
}
h2 {
	font-size: 24px;
	font-weight: 500;
	line-height: 1.1;
	margin-bottom: var(--xxs-pad);
}
h3 {
	font-size: 24px;
	font-weight: 500;
	line-height: 1.2;
	margin-bottom: var(--xxs-pad);
}
h4 {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.2;
	margin-bottom: var(--xs-pad);
}
h5 {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.2;
	margin-bottom: var(--xs-pad);
}

p {
	margin: 0px 0px var(--main-pad) 0px;
}
a {
	color: var(--text-color);
	text-decoration: underline;
	text-decoration: none;
	outline: 0 !important;
	transition: color 0.2s ease;
}
a:hover,
a:focus {
	color: var(--sub-color);
	text-decoration: none;
	transition: color 0.3s ease-out;
}
a img {
	border: none;
	outline: 0;
}

:focus {
	-moz-outline-style: none;
	outline: 0;
}
:focus {
	-moz-outline-style: none;
}
::selection {
	background-color: #333333;
	color: #fff;
}
::-moz-selection {
	background-color: #333333;
	color: #fff;
}
img {
	max-width: 100%;
	/*
	height: auto;
*/
}
input:focus,
button:focus {
	outline: none;
}
.no-mob {
}

b, strong {
    font-weight: 700;
}

.spin {
    animation: spin 0.5s linear infinite;
}

/* BUTTON STYLES *****************************/

.button,
a.button,
.button:visited,
a.button:visited {
    box-sizing: border-box;
	position: relative;
	display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
	cursor: pointer;
	text-align: center;
	text-decoration: none;
	color: var(--white-color);
	line-height: var(--main-pad);
    height: var(--lg-pad);
	font-size: var(--button-font);
	font-weight: 600;
	padding: var(--sm-pad) var(--med-pad);
	box-shadow: none;
	outline: none;
	border-radius: 0;
	border: none;
    border-width: 1px;
    border-style: solid;
    border-image: linear-gradient(to right, rgba(255, 255, 255, 0.32), rgba(255, 255, 255, 0)) 1;
	background: var(--sub-color);
	transition: all 0.2s ease;
	z-index: 1;
}
.button:hover,
.button:active,
.button:focus,
a.button:hover,
a.button:active,
a.button:focus {
	color: var(--white-color);
	background: var(--main-color);
	box-shadow: none;
	transition: all 0.4s ease;
}
.button.l-btn,
.l-btn:visited,
a.button.l-btn,
a.button.l-btn:visited {
	color: var(--text-color);
	padding: 11px var(--med-pad);
	border: 1px solid var(--dark-border-color);
	min-width: 120px;
	background: none;
	transition: all 0.2s ease;
}
.l-btn:hover,
.l-btn:active,
.l-btn:focus,
a.l-btn:hover,
a.l-btn:active,
a.l-btn:focus {
	background: none;
	color: var(--sub-color);
	border: 1px solid var(--sub-color);
	transition: all 0.4s ease;
}
.l-btn:after{
    display: none;
}

.white-btn,
.white-btn:visited,
a.white-btn,
a.white-btn:visited {
	background: var(--white-color);
	color: var(--text-color);
    border: 1px solid var(--white-color);  
	transition: all 0.4s ease;
}
.l-btn.white-btn,
.l-btn.white-btn:visited,
a.l-btn.white-btn,
a.l-btn.white-btn:visited {
	background: transparent;
    color: var(--white-color);
    border: 1px solid var(--hover-white-alpha-color);
}

.white-btn:hover,
.white-btn:active,
.white-btn:focus,
a.white-btn:hover,
a.white-btn:active,
a.white-btn:focus {
	background-color: var(--sub-color);
	color: var(--white-color);
    border: 1px solid var(--sub-color);
}

.dark-btn,
.dark-btn:visited,
a.dark-btn,
a.dark-btn:visited {
    border: 1px solid rgba(255, 255, 255, 0.16);
	background: var(--main-color);
	color: var(--white-color);
}
.dark-btn:hover,
.dark-btn:active,
.dark-btn:focus,
a.dark-btn:hover,
a.dark-btn:active,
a.dark-btn:focus {
	background: var(--sub-color);
	color: var(--white-color);
}

.button > *,
a.button > *{
    position: relative;
    z-index: 1;
}
.button:after,
a.button:after{
    content: '';
    position: absolute;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    top: 1px;
    right: 1px;
    border-width: 1px;
    border-style: solid;
    border-image: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.32)) 1;
    opacity: 1;
    z-index: 1;
    transition: all 0.2s ease;
}
.button:hover:after,
.button:active:after,
.button:focus:after,
a.button:hover:after,
a.button:active:after,
a.button:focus:after {
	opacity: 0;
	transition: all 0.4s ease;
}
.button.dark-btn:after,
a.button.dark-btn:after{
    width: 100%;
    height: 100%;
    top: 0px;
    right: 0px;
    border: 0px;
    background: var(--dark-button-gradient);
}


.button.icon-button{
    flex-direction: row;
    min-width: initial;
    padding: var(--sm-pad) var(--main-pad) var(--sm-pad) var(--mid-pad);
}

.icon-button i{
    position: relative;
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	width: var(--main-pad);
	height: var(--main-pad);
	line-height: var(--main-pad);
	font-size: var(--sm-icon-font);
}
.icon-button i + span{
    margin-left:var(--xs-pad); 
}


.a-btn,
a.a-btn,
.a-btn:visited,
a.a-btn:visited {
	position: relative;
	display: inline-flex;
	cursor: pointer;
	text-align: center;
	color: var(--sub-color);
	line-height: var(--main-pad);
	font-size: var(--button-font);
	font-weight: 600;
	padding: var(--sm-pad) 0;
	text-decoration: none;
	text-shadow:none;
	box-shadow: none;
	outline: none;
	border: none;
	border-radius: 0;
	background: transparent;
	transition: all 0.2s ease;
	z-index: 1;
}
.a-btn:hover,
.a-btn:active,
.a-btn:focus,
a.a-btn:hover,
a.a-btn:active,
a.a-btn:focus {
    background: transparent;
    color: var(--main-color);
    transition: all 0.4s ease-out;
}
.a-btn span{
    margin-right: var(--mid-pad); 
}
.a-btn div {
    display: flex;
}
.a-btn i{
	position: relative;
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	width: var(--main-pad);
	height: var(--main-pad);
	line-height: var(--main-pad);
	font-size: var(--sm-icon-font);
    color: var(--white-color);
    background: var(--sub-color);
    border-radius:50%;
}
.a-btn:hover i,
.a-btn:active i,
.a-btn:focus i,
a.a-btn:hover i,
a.a-btn:active i,
a.a-btn:focus i{
    background: var(--main-color);
    transition: all 0.4s ease-out;
}
.a-btn.sm-btn{
    padding: 0;
}

.aw-btn,
a.aw-btn,
.aw-btn:visited,
a.aw-btn:visited {
    color: var(--white-color);
}
.aw-btn i{
    background: transparent;
}
.aw-btn:hover,
.aw-btn:active,
.aw-btn:focus,
a.aw-btn:hover,
a.aw-btn:active,
a.aw-btn:focus,
.aw-btn:hover i,
.aw-btn:active i,
.aw-btn:focus i,
a.aw-btn:hover i,
a.aw-btn:active i,
a.aw-btn:focus i{
    color: var(--sub-color);
    background: transparent;
    transition: all 0.4s ease-out;
}


.clear-btn,
.clear-btn:visited,
a.clear-btn,
a.clear-btn:visited {
	background: none;
	color: var(--white-color);
	border: none;
}
.clear-btn:hover,
.clear-btn:active,
.clear-btn:focus,
a.clear-btn:hover,
a.clear-btn:active,
a.clear-btn:focus {
	background: none;
	color: var(--sub-color);
	border: none;
	transition: all 0.4s ease;
}

.wa-btn,
.wa-btn:visited,
a.wa-btn,
a.wa-btn:visited {
    display: inline-flex;
    flex-direction: row;
	background: none;
	color: var(--wa-green-color);
    padding: 11px var(--main-pad) 11px var(--mid-pad);
	border: none;
}
.wa-btn-full,
.wa-btn-full:visited,
a.wa-btn-full,
a.wa-btn-full:visited {
    display: inline-flex;
    flex-direction: row;
	color: var(--wa-green-color);
	background: transparent;
    border: 1px solid var(--border-color);
}
.wa-btn-full:after{
    display: none;
}
.wa-btn-full span,
.wa-btn span{
    display: inline-flex;
}
.wa-btn-full i,
.wa-btn i{
	position: relative;
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	width: var(--main-pad);
	height: var(--main-pad);
	line-height: var(--main-pad);
	font-size: 20px;
    margin-left: 8px;
}
.wa-btn-full i{
    margin: 0;
}
.wa-btn-full:hover,
.wa-btn-full:active,
.wa-btn-full:focus,
a.wa-btn-full:hover,
a.wa-btn-full:active,
a.wa-btn-full:focus {
	background: none;
	color: var(--white-color);
	background: var(--sub-color);
	border: 1px solid var(--sub-color);
	transition: all 0.4s ease;
}

.button.btn-icon,
a.button.btn-icon{
	padding: var(--sm-pad) var(--main-pad) var(--sm-pad) 20px;	
}
.button.btn-icon{
    flex-direction: row;
}

.btn-icon i,
.btn-icon div{
	position: relative;
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	width: var(--main-pad);
	height: var(--main-pad);
	line-height: var(--main-pad);
	font-size: var(--icon-font);
}
.btn-icon span {
	display: inline-flex;
	line-height: var(--main-pad);
	padding: 0 0 0 var(--xs-pad);
    font-weight: 600;
    white-space: nowrap;
}
.btn-icon div img{
	height: var(--mid-pad); 
	width: auto;
}
.btn-icon-sm div img{
	height: 20px; 
	width: auto;
}

.i-btn{
	position: relative;
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: var(--lg-pad);
	height: var(--lg-pad);
	line-height: var(--lg-pad);
	font-size: var(--icon-font);
	color: var(--white-color);
    background: var(--dark-main-color);
	box-shadow: none;
	outline: none;
	border: none;
	border-radius: var(--main-radius);
	transition: all 0.2s ease;
}

.i-btn:hover,
.i-btn:active,
.i-btn:focus{
	color: var(--white-color);
	background: var(--sub-color);
    transition: all 0.4s ease-out;
}

.i-btn-clear{
	background: none;
/*	background: var(--white-alpha-16);*/
}

.i-btn-mid{
	width: 40px;
	height: 40px;
	line-height: 40px; 
}

.i-btn-sm{
	width: var(--main-pad);
	height: var(--main-pad);
	line-height: var(--main-pad);
    font-size: var(--sm-icon-font); 
}
.i-btn-lg{
	font-size: 32px;
	color: var(--med-text-color);
}

.txt-btn {
	position: relative;
	display: inline-flex;
	color: var(--text-color);
	background: none;
	border: none;
	box-shadow: none;
	padding: 0px 32px 0px 0px;
	line-height: 24px;
	text-decoration: none;
	transition: all 0.2s ease;
}
.txt-btn span {
	position: relative;
	display: inline-flex;
	padding: 0px 8px 0px 0px;
    padding: 0;
	font-size: var(--button-font);
	line-height: 24px;
	font-weight: 600;
    opacity: 0;
	transition: all 0.1s ease;
}
.txt-btn div {
	position: absolute;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	top: 0;
	left: 0;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: var(--main-pad);
	height: var(--main-pad);
	line-height: var(--main-pad);
	font-size: var(--sm-icon-font); 
	color: var(--text-color);
/*
    background: var(--bg-color); 
    border-radius:50%;
*/
	transition: left 0.2s ease;
}
.txt-btn:hover span{
    color: var(--sub-color);
	opacity: 1;
	transition: opacity 0.4s ease-in;
    transition-delay: 0.1s;
}
.txt-btn:hover div {
	color: var(--sub-color);
/*    background: var(--sub-color);*/
    left: calc(100% - var(--main-pad));
    transition: left 0.4s ease-out;
}
.w-txt-btn span{
	color: var(--white-color);
}
.txt-btn.w-txt-btn div,
.txt-btn.w-txt-btn:hover div {
	color: var(--white-color);
/*    background: var(--white-color); */
}
/*
.txt-btn:hover,
.txt-btn:active,
.txt-btn:focus {
	color: var(--text-color);
	transition: all 0.4s ease;
}
*/

.inline-txt-btn {
	position: relative;
	display: inline-flex;
	color: var(--text-color);
	background: none;
	border: none;
	box-shadow: none;
	padding: 0px 0px;
	line-height: 24px;
	text-decoration: none;
	transition: all 0.2s ease;
}
.inline-txt-btn span {
	position: relative;
	display: inline-flex;
	padding: 0px 4px 0px 0px;
	font-size: var(--button-font);
	line-height: 24px;
	font-weight: 700;
}
.inline-txt-btn i {
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	top: 0;
	left: 0;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: var(--main-pad);
	height: var(--main-pad);
	line-height: var(--main-pad);
	font-size: var(--sm-icon-font); 
}
.inline-txt-btn:hover{
    color: var(--sub-color);
    transition: all 0.4s ease-out;
}
.btn-border,
.btn-border.wa-btn-full,
.button.btn-border {
    display: inline-flex;
    flex-direction: row;
	background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.48);
}
.btn-border:hover, 
.btn-border:active, 
.btn-border:focus, 
a.btn-border:hover, 
a.btn-border:active, 
a.btn-border:focus {
    background: none;
    color: var(--white-color);
    background: var(--sub-color);
    border: 1px solid var(--sub-color);
    transition: all 0.4s ease;
}
.btn-border::after {
    display: none;
}

/*

.img-btn{
	position: relative;
	display: flex;	
	opacity: 1;
	background: var(--input-highlight-color);
	border-radius: var(--main-radius);
	transition: opacity 0.2s ease;
	padding: 4px;
}
.img-btn img{
	height: 48px;
	height: 40px;
	width: auto;
}
.img-btn:hover{
	opacity: 0.72;
	transition: opacity 0.4s ease;	
}
*/

/* CHIP STYLES *****************************/
.chip {
    top: var(--med-pad);
    left: var(--med-pad);
    line-height: var(--mid-pad);
    padding: var(--xxs-pad) var(--xs-pad);
    background: rgba(255, 255, 255, 0.08);
    border-radius: var(--sm-radius);
    font-size: var(--sm-font);
    color: var(--white-color);
}
.chip.chip-sub {
    background: var(--sub-color);
}

/* TOOLTIP STYLES *****************************/
.tooltip {
    --bs-tooltip-opacity: 1;
    --bs-tooltip-bg: var(--white-color);
    --bs-tooltip-border-radius: var(--sm-radius);
    --bs-tooltip-padding-x: var(--xs-pad);
    --bs-tooltip-padding-y: var(--xs-pad);
    --bs-tooltip-font-size: var(--sm-font);
    --bs-tooltip-max-width: 240px;
    --bs-tooltip-color: var(--dark-main-color);
    border-radius: var(--bs-tooltip-border-radius);
    box-shadow: 0 6px 8px rgba(0, 0, 0, 0.16);
    padding: 0;
}

/* FORM STYLES *****************************/

.form-wrap {
	position: relative;
}

.form-row-main {
	margin-left: -24px;
	margin-right: -24px;
}
.form-col-main {
	position: relative;
	display: block;
	width: 50%;
	float: left;
	padding: 0px 24px;
}
.form-wrapper .form-wrap {
	margin-bottom: 0px;
}

.form-subtitle{
	position: relative;
	display: block;
	font-weight: 600;
	line-height: var(--main-pad);
	margin-top: var(--mid-pad);
	margin-bottom: var(--sm-pad);
}
.form-col .form-subtitle{
	width: 100%;
}

.form-cols {
	display: flex;
	margin-left: -12px;
	margin-right: -12px;
}
.form-col {
	position: relative;
	display: block;
	width: 50%;
	width: calc(50% - 24px);
	float: left;
	margin: 0px 12px;
}
.form-col-sm {
	width: 25%;
	width: calc(25% - 24px);
}
.form-col-lg {
	width: 75%;
	width: calc(75% - 24px);
}
.form-cols .form-col {
	display: flex;
	flex-wrap: wrap;
	float: none;
}
.col-margin.form-cols{
	margin-top: 24px;	
}
.form-group {
	position: relative;
	display: block;
	margin-bottom: 24px;
}
.form-cols:last-child .form-group{
	margin-bottom: 0;
}
/*
.form-group:not(.form-floating) .control-label {
	position: relative;
	display: block;
	font-weight: 300;
	margin-bottom: 8px;
}
*/
.form-col h3 {
	padding: 0px 20px;
}
.form-control {
	height: 48px;
	font-weight: 600;
	padding: 14px 16px 14px 16px;
	line-height: 18px;
	border: 1px solid var(--input-bg-color);
	font-size: var(--input-font);
	border-radius: 0;
	color: var(--text-color);
	background: var(--input-bg-color);
	box-shadow: none;
	transition: border 0.2s ease, background 0.2s ease;
}
.email-input.form-control {
	text-transform: lowercase;
}
.form-floating > .form-control,
.form-floating > .form-control-plaintext{
	font-size: var(--input-font);
	padding: 14px 16px 14px 16px;
	line-height: 18px;
	height: 48px;
}
.form-control:focus {
	color: var(--text-color);
	border: 1px solid var(--input-highlight-color);
	background: var(--input-highlight-color);
	box-shadow: none;
	transition: border 0.4s ease, background 0.4s ease;
}
.form-floating > .form-control-plaintext:focus,
.form-floating > .form-control-plaintext:not(:placeholder-shown),
.form-floating > .form-control:focus,
.form-floating > .form-control:not(:placeholder-shown) {
	padding-top: 23px;
	padding-bottom: 7px;
}
.form-floating > label {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	font-weight: 300;
	color: var(--text-color);
	font-size: var(--input-font);
	line-height: 24px;
	padding: 12px 16px;
	overflow: hidden;
	text-align: start;
	text-overflow: ellipsis;
	white-space: nowrap;
	pointer-events: none;
	border: 1px solid transparent;
	transform-origin: 0 0;
	transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
}
.form-floating > .form-control-plaintext ~ label,
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label {
	color: var(--sub-color);
	opacity: 1;
	transform: scale(0.8) translateY(-6px) translateX(4px);
}
textarea.form-control {
	min-height: 144px;
	max-height: 200px;
}
.form-control.transparent-input {
	color: var(--white-color);
	background: rgba(255,255,255,0.24);
	border: 1px solid transparent;
	transition: all 0.2s ease;
}
.form-control.transparent-input:focus {
	color: var(--white-color);
	background: rgba(255,255,255,0.32);
	border: 1px solid transparent;
}
.form-control.grey-input {
	color: var(--text-color);
	background: var(--bg-color);
	border: 1px solid transparent;
	transition: all 0.2s ease;
}
.form-control.grey-input:focus {
	color: var(--text-color);
	background: var(--bg-color);
	border: 1px solid transparent;
}
.form-btns {
	display: flex;
	align-items: center;
	text-align: left;
}
.form-col-sm.form-btns{
	align-items: flex-start;
	justify-content: flex-end;
	text-align: right;
}
.form-select-box {
    position: relative;
    display: block;
/*	min-width: 240px;*/
}
.form-select-box .selectric-wrapper {
	position: relative;
	border: none;
	width: 100%;
/*
	margin-left: -1px;
	margin-right: -1px;
*/
	height: 48px;
}
.form-select-box .selectric {
	border: none;
	background: var(--input-bg-color);
	border-radius: var(--input-radius);
	border: none;
	height: 48px;
}
.form-select-box .selectric-open {
    z-index: 8;
	border-radius: var(--input-radius);
}
.form-select-box .selectric-open.selectric-below .selectric {
	border-radius: var(--input-radius) var(--input-radius) 0 0;
	background: var(--input-bg-color);
}

.form-select-box .selectric-open.selectric-above .selectric {
	border-radius: var(--input-radius);
	border-radius: 0 0 var(--input-radius) var(--input-radius);
	background: var(--input-bg-color);
	z-index: 3;
}
.form-select-box .selectric-open.selectric-below .selectric-items {
	border-radius: 0 0 var(--input-radius) var(--input-radius);
}
.form-select-box .selectric-open.selectric-above .selectric-items {
	border-radius: var(--input-radius) var(--input-radius) 0 0;
}
.form-select-box .selectric-open {
	box-shadow: 0 6px 8px rgba(0, 0, 0, 0.08);
}
.form-select-box .selectric-items {
	display: block;
	opacity: 0;
	padding: 4px;
	background: var(--input-bg-color);
/*	border: 1px solid var(--input-bg-color);*/
	border: none;
	overflow: hidden;
	-webkit-transform-origin: 50% 0%;
	transform-origin: 50% 0%;
	-webkit-transform: scaleY(0);
	transform: scaleY(0);
	-webkit-transition: transform 0.15s ease-out, opacity 0.1s;
	transition: transform 0.15s ease-out, opacity 0.1s;
}

.form-select-box .selectric-open.selectric-above .selectric-items {
	-webkit-transform-origin: 50% 100%;
	transform-origin: 50% 100%;
	-webkit-transform: scaleY(1);
	transform: scaleY(1);
	opacity: 1;
	-webkit-transition: transform 0.3s ease, opacity 0.2s;
	transition: transform 0.3s ease, opacity 0.2s;
	box-shadow: 0px -6px 12px rgba(0, 0, 0, 0.08);
}

.form-select-box .selectric-open.selectric-below .selectric-items {
	-webkit-transform-origin: 50% 0%;
	transform-origin: 50% 0%;
	-webkit-transform: scaleY(1);
	transform: scaleY(1);
	opacity: 1;
	-webkit-transition: transform 0.3s ease, opacity 0.2s;
	transition: transform 0.3s ease, opacity 0.2s;
	box-shadow: 0 6px 8px rgba(0, 0, 0, 0.08);
}
.selectric-items .selectric-scroll{
	scrollbar-color: rgba(0, 0, 0, 0.24) rgba(0, 0, 0, 0.08);
	scrollbar-width: thin;
}
.selectric-scroll::-webkit-scrollbar {
	width: 8px;
	border-radius: 4px;
	cursor: pointer;
}
.selectric-scroll::-webkit-scrollbar-track {
	background: rgba(0, 0, 0, 0.08);
	cursor: pointer;
	border-radius: 4px;
}
.selectric-scroll::-webkit-scrollbar-thumb {
	background: rgba(0, 0, 0, 0.24);
	border-radius: 4px;
	cursor: pointer;
	transition: background 300ms ease;
}
.selectric-scroll::-webkit-scrollbar-thumb:hover {
	background: rgba(0, 0, 0, 0.32);
	cursor: pointer;
}
.form-select-box .selectric .label {
	height: 48px;
	line-height: 32px;
	margin-right: 48px;
	padding: 8px 0px 8px 16px;
	font-size: 14px;
	color: var(--text-color);
	font-weight: 300;
}
.form-select-box .selectric .button {
	height: 48px;
	width: 48px;
	right: 0px;
	top: -24px;
	top: 0;
	text-align: center;
	color: var(--text-color);
	background: transparent;
	text-shadow: none;
	z-index: 3;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: all 0.1s ease;
	transition: all 0.1s ease;
}
.selectric-open .selectric .button {
	-webkit-transform: rotate(-180deg);
	transform: rotate(-180deg);
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.form-select-box .selectric .button:after {
	line-height: 48px;
	height: 48px;
	width: 48px;
	text-align: center;
	top: 24px;
	top: 0px;
	font-weight: 300;
	color: var(--text-color);
	background: transparent;
	opacity: 1;
}
.form-select-box .selectric-items li {
    position: relative;
    display: block;
	font-size: 14px;
    padding: var(--sm-pad) var(--sm-pad);
	line-height: var(--main-pad);
	line-height: var(--mid-pad);
    color: var(--text-color);
	font-weight: 300;
	border-radius: var(--input-radius);
    cursor: pointer;
}
.form-select-box .selectric-items li:hover {
    background: transparent;
    color: var(--text-color);
    font-weight: 700;
}
.form-select-box .selectric-items li.highlighted{
	font-weight: 700;
	background: var(--input-highlight-color);
}

.white-select.form-select-box .selectric,
.white-select.form-select-box .selectric-items,
.white-select.form-select-box .selectric-open.selectric-below .selectric,
.white-select.form-select-box .selectric-open.selectric-above .selectric{
	background: var(--white-color);
}

.form-control::-webkit-input-placeholder {
	color: var(--text-color);
	color: rgba(112, 119, 125, 0.5);
}
.form-control::-moz-placeholder {
	color: rgba(112, 119, 125, 0.5);
}
.form-control:-ms-input-placeholder {
	color: rgba(112, 119, 125, 0.5);
}
.form-control::placeholder {
	color: rgba(112, 119, 125, 0.5);
    font-weight: 300;
}

.transparent-input.form-control::-webkit-input-placeholder {
	color: var(--text-color);
	color: rgba(255,255,255, 1);
	font-weight: 400!important;
}
.transparent-input.form-control::-moz-placeholder {
	color: rgba(255,255,255, 1);
	font-weight: 400!important;
}
.transparent-input.form-control:-ms-input-placeholder {
	color: rgba(255,255,255, 1);
	font-weight: 400!important;
}
.transparent-input.form-control::placeholder {
	color: rgba(255,255,255, 1);
	font-weight: 400!important;
}

.form-control:focus::-webkit-input-placeholder {
	font-weight: 300;
}
.form-control:focus::-moz-placeholder {
	font-weight: 300;
}
.form-control:focus:-ms-input-placeholder {
	font-weight: 300;
}
.form-control:focus::placeholder {
	font-weight: 300;
}

input:-webkit-autofill,
input:-webkit-autofill:focus,
input:-webkit-autofill:hover,
input:-internal-autofill-selected, 
input:is(:-webkit-autofill, :autofill) {
	-webkit-appearance: none !important;
	-webkit-box-shadow: 0 0 0px 1000px var(--input-bg-color) inset !important;
	background-color: var(--input-bg-color) !important;
	background-image: none !important;
	color: var(--text-color) !important;
}

.form-control.input-error{
    border: 1px solid rgba(220, 53, 69, 0.08);
    border: transparent;
    background: rgba(220, 53, 69, 0.08);
}

.form-group .error-text,
.select-box .error-text,
.checkbox .error-text,
.form-captcha .error-text,
.form-option-group .error-text,
.form-options .error-text {
	position: absolute;
	top: auto !important;
	left: 16px;
	bottom: -20px;
	font-weight: 300;
	color: var(--red-color) !important;
	font-size: 12px !important;
}
.checkbox .error-text {
	bottom: -12px;
	left: 40px;
}



input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}


input[type="file"] {

}
.form-fileinput .error-text {
	font-weight: 300;
	color: var(--red-color) !important;
	font-size: 12px !important;
}
.box .inputfile {
	/*    width: 0.1px;*/
	height: 0.1px;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	z-index: -1;
}

.inputfile + label {
	display: flex;
	width: 100%;
	font-size: var(--input-font);
	font-weight: 300;
	text-overflow: ellipsis;
	white-space: nowrap;
	cursor: pointer;
	overflow: hidden;
	padding: 11px 16px;
	margin-bottom: 0px;
}
.inputfile + label span {
	display: inline-block;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	line-height: 24px;
	padding-right: 32px;
/*    font-weight: 600;*/
}
.no-js .inputfile + label {
	display: none;
}

.inputfile:focus + label,
.inputfile.has-focus + label {
}
.inputfile + label i {
	position: absolute;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	align-items: center;
	width: 48px;
	height: 48px;
	right: 0;
	top: 0;
	font-size: var(--icon-font);
	color: var(--text-color);
}
.inputfile-1 + label {
	border-radius: var(--input-radius);
	color: var(--text-color);
	border: 1px solid var(--input-highlight-color);
	background: var(--input-bg-color);
/*    background: var(--input-highlight-color);*/
	/*	border: 1px solid currentColor;*/
}
.inputfile-1:focus + label,
.inputfile-1.has-focus + label,
.inputfile-1 + label:hover {
	color: var(--text-color);
}
.inputfile + label:hover i {
	color: var(--sub-color);
}
/*
.inputfile-1 + label:hover {
	border: 1px solid var(--dark-border-color);
}
*/

.modal-content .form-control {
    background: var(--input-highlight-color);
}

.ch-btn {
	position: relative;
	display: inline-block;
	display: block;
	vertical-align: middle;
	min-height: 40px;
	padding-top: 8px;
	margin-bottom: 8px;
}

.ch-inline.ch-btn{
	padding-top: 0px;
	margin-right: 24px;
	margin-bottom: 0px;
}
.ch-inline.ch-btn:last-child{
	margin-right: 0px;
}

.ch-btn input[type="checkbox"] {
	position: absolute;
	left: -49%;
	visibility: hidden;
	height: 1px;
	z-index: 0;
}
.ch-btn label {
	position: relative;
	display: block;
	font-size: var(--input-font);
	font-weight: 300;
	padding-left: 40px;
	line-height: 24px;
	cursor: pointer;
	z-index: 1;
}
.ch-btn label span {
	position: absolute;
	display: block;
	height: 24px;
	width: 24px;
	top: 0px;
	left: 0px;	
	border: 1px solid var(--input-bg-color);
	background: var(--input-bg-color);
	border-radius: 5px;
	z-index: 1;
	text-align: center;
	font-size: 14px;
	color: var(--border-color);
}

.ch-btn label:hover span {
	cursor: pointer;
}
.ch-btn input[type="checkbox"]:checked + label span {
	color: var(--white-color);
	background: var(--sub-color);
	border: 1px solid var(--sub-color);
}
.ch-btn label i {
	display: none;
	height: 24px;
	line-height: 24px;
}
.ch-btn label:hover i,
.ch-btn input[type="checkbox"]:checked + label i {
	display: block;
	opacity: 1;
}
.ch-btn a {
	color: var(--sub-color);
	text-decoration: underline;
/*	text-transform: lowercase;*/
}
.ch-btn a:hover {
	text-decoration: none;
}

.radio-btn{
	position: relative;
	display: flex;
	overflow: hidden;
	height: 40px;
	margin-bottom: 8px;
	padding-left: 0px;
}
.radio-normal{
	display: flex;
	padding-top: 8px;
}
.radio-inline{
	position: relative;
	display: inline-flex;
	overflow: hidden;
	padding-top: 0px;
	margin-bottom: 0;
	margin-right: var(--main-pad);
}
.radio-inline:last-child{
	margin-right: 0;	
}
.radio:hover,
.radio-btn label:hover{
	cursor: pointer;
}
.radio-label{
	display: block;
	margin: 0;
	font-size: var(--input-font);
	font-weight: 300;
	padding-left: 40px;
	line-height: 24px;
} 
.radio-btn input{
	position: absolute;
	visibility: hidden;
}
.radio-btn .radio-cir{
	position: absolute;
	display: block;
	height: 24px;
	width: 24px;
	left:0px;
	top:0px;
	border: none;
	border: 1px solid var(--bg-color);
	background: var(--bg-color);
	border-radius: 50%;
	z-index: 2;
	transition: all .2s ease;
    pointer-events: none;
}
.radio-btn .radio-cir:after{
	position: absolute;
	content: '';
	display: block;
	left:6px;
	top:6px;
	height: 10px;
	width: 10px;
	border-radius: 50%;
	background: transparent;
	transition: all .2s ease;
}
.radio-btn input[type="radio"]:checked + .radio-cir{
    background: var(--sub-color);
	border: 1px solid var(--sub-color);
}
.radio-btn input[type="radio"]:checked + .radio-cir:after{
	background: var(--white-color);	
}

.grecaptcha-badge {
	visibility: hidden;
}

.input-button{
    position: relative;
	display: flex;
	cursor: pointer;
	text-align: center;
	text-decoration: none;
	color: var(--white-color);
	line-height: var(--main-pad);
	font-size: var(--button-font);
	padding: var(--sm-pad) var(--mid-pad);
	box-shadow: none;
	outline: none;
	border-radius: var(--main-radius);
	border: none;
	background: var(--main-white-alpha-color);
	transition: all 0.2s ease;
	z-index: 1;
}
.input-button:hover{
    cursor: pointer;
	background: var(--hover-white-alpha-color);    
}
.input-button span{
    font-weight: 300;
}

.input-button:after {
    content: "\f105";
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
    align-items: center;
	text-align: left;
	width: var(--lg-pad);
	height: var(--lg-pad);
	line-height: var(--lg-pad);
	color: var(--white-color);
	background: none;
	font-size: 16px;
	font-family: "Font Awesome 6 Pro";
	font-weight: 300;
}


/* WRAPPER STYLES *****************************/

#outer-wrapper {
	position: relative;
	display: block;
/*	padding-top: 80px;*/
/*	animation: opac-in-animate 0.5s ease-out forwards;*/
    animation: opac-in-animate 0.5s ease-out forwards;
}
#outer-wrapper.no-anim {
	animation: none!important;
}

#scroll-wrapper {
	overflow: initial !important;
}

html.no-scroll, 
html.open-menu{
	overflow: hidden;
    scrollbar-gutter: stable;
}

body.menu-open #outer-wrapper,
body.modal-open #outer-wrapper {
	overflow: hidden;
    scrollbar-gutter: stable;
}

#main-wrapper {
	position: relative;
	padding-top: var(--main-pad);
	padding-top: 0;

	z-index: 1;
}
#sub-wrapper {
	position: relative;	
/*	z-index: 1;*/
}
#content-wrapper {
	position: relative;
}
.sub-page #content-wrapper {
	padding-top: var(--max-pad);
	padding-top: 160px;
}

.contact-page.sub-page #content-wrapper,
.info-page.sub-page #content-wrapper{
    padding-bottom: var(--xl-pad); 
}

.banner-top-page #content-wrapper {
	padding-top: 0;
}


#content-wrapper-full{
    padding-top: 80px;
}

.wrapper-no-pad,
.sub-page #content-wrapper.wrapper-no-pad {
	padding: 0;
}

#content-main {
	position: relative;
/*	min-height: 60vh;*/
	padding: var(--xl-pad) 0px var(--xxl-pad) 0px;
	padding: 0px;
}
#bottom-wrapper{
	position: relative;
    background: var(--white-color);
    z-index: 1;
}

#bg-wrapper {
	position: fixed;
	content: "";
	display: none;
	opacity: 0;
	width: 100%;
	height: 110%;
	top: 0;
	z-index: 98;
    background: rgba(var(--main-color-rgb), 0.48);
    backdrop-filter: blur(8px);
}

.show-bg #bg-wrapper {
	display: block;
	opacity: 1;
	animation: opac-in-animate 0.2s ease forwards;
}

/*
.menu-ani #bg-wrapper {
	display: block;
	opacity: 1;
	animation: opac-out-animate 0.2s ease-in forwards;
}
*/

#bg-nav {
	position: fixed;
	content: "";
	display: none;
	opacity: 0;
	width: 100%;
	height: 100dvh;
	top: 0;
    left: 0;
	z-index: 2;    
    background: rgba(var(--main-color-rgb), 0.48);
    backdrop-filter: blur(8px);
}
.menu-open #bg-nav {
	display: block;
	opacity: 1;
	animation: opac-in-animate 0.2s ease forwards;
}
.menu-ani #bg-nav {
	display: block;
	opacity: 1;
	animation: opac-out-animate 0.2s ease-in forwards;
}
.show-bg #header{
    background: var(--white-color);
}


/* HEADER STYLES *****************************/

#header {
	position: fixed;
	display: block;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 9;
	transition: all 0.2s ease;
}

#header.sticky {
	background: var(--white-color);	
	transition: all 0.2s ease-out;
}

#header.sticky:after {
	content: '';
	position: absolute;
	display: block;
	width: 100%;
	height: 1px;
	left: 0;
	bottom: 0;
	z-index: -1;
	background: var(--line-gradient);
	background: var(--bg-color);
}

.show-bg #outer-wrapper:not(.banner-top, .home-wrap) #header:after,
.show-bg #header:after,
.show-bg #header.sticky:after {
	opacity: 0;
}

.header-main {
	position: relative;
	display: flex;
    flex-grow: 1;
    padding: 0;
/*	padding: 0 var(--main-pad);*/
}

.home-wrap .header-main {
    transform: translateY(-100%);
	animation: top-in-animate 0.6s ease-out forwards;
}

.header-center{
	position: relative;
	display: flex;
	justify-content: center; 
    flex: 1;
    z-index: 1;
}

.logo-main {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
    z-index: 4;
}
.logo-main a {
	position: relative;
	display: block;
	opacity: 1;
	transition: all 0.2s ease;
}
.logo-main a:hover {
	opacity: 0.64;
	transition: all 0.4s ease-out;
}
.logo-main a span {
	position: relative;
	z-index: 1;
}
.logo-main-light {
	display: none;
}
.logo-main-dark {
	display: flex;
}
.logo-icon{
	display: none;    
}

.logo-main img {
	height: 36px;
	width: auto;
	vertical-align: top;
}

.nav-wrap {
	position: absolute;
	display: flex;
    left: -640px;
    top: 0;
    flex-direction: column;
	padding:0;
    width: 640px;
    height: 100dvh;
	flex-grow: 1;
    background: var(--white-color);
    transition: left 0.2s ease;
    z-index: 4;
}
.open-menu .nav-wrap {
    left: 0;
    transition: left 0.4s ease-out;
}

.nav-main-top{
	position: relative;
	display: flex;
    width: 100%;
}
.nav-logo-main{
    margin-left: 40px;
}
.nav-logo-main img{
    height: 36px; 
    width: auto;
}
.nav-main-top .nav-logo-main{
    display: none;
}
.nav-wrap .nav-lang-mobile,
.nav-lang-popover{
    display: none;
}

.nav-icon-btn{
	position: relative;
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: 80px;
	height: 80px;
	line-height: 80px;
	font-size: var(--icon-font);
	color: var(--white-color);
    background: var(--dark-alpha-color);
    background: var(--white-alpha-color);
	box-shadow: none;
	outline: none;
	border: none;
	border-radius: 0;
	transition: all 0.2s ease;
}

.nav-icon-btn:hover,
.nav-icon-btn:active,
.nav-icon-btn:focus{
	color: var(--white-color);
	background: var(--sub-color);
    transition: all 0.4s ease-out;
}

.nav-main {
	position: relative;
	display: flex;
    flex-direction: column;
	margin: 0;
    padding: 0 80px;
    flex: 1;
/*    padding-left:64px; */
}
.nav-main ul {
	position: relative;
	display: flex;
    flex-direction: column;
	list-style: none;
	padding: 0;
	margin: 0;
}
.nav-main > ul > li {
	position: relative;
	display: flex;
	padding: 0;
    opacity: 0
}

.menu-open .nav-main > ul > li{
    animation: right-in-animate 0.5s ease-out forwards;
}
.menu-open .nav-main > ul.nav-clean-menu > li:nth-child(1){
    animation-delay: 0.4s;
}
.menu-open .nav-main > ul.nav-clean-menu > li:nth-child(2){
    animation-delay: 0.5s;
} 
.menu-open .nav-main > ul.nav-clean-menu > li:nth-child(3){
    animation-delay: 0.6s;
} 
.menu-open .nav-main > ul.nav-clean-menu > li:nth-child(4){
    animation-delay: 0.7s;
} 
.menu-open .nav-main > ul.nav-clean-menu > li:nth-child(5){
    animation-delay: 0.8s;
} 
.menu-open .nav-main > ul.nav-clean-menu > li:nth-child(6){
    animation-delay: 0.9s;
} 


.menu-open .nav-main > ul.nav-icon-menu > li:nth-child(1){
    animation-delay: 0.8s;
} 
.menu-open .nav-main > ul.nav-icon-menu > li:nth-child(2){
    animation-delay: 0.9s;
} 
.menu-open .nav-main > ul.nav-icon-menu > li:nth-child(3){
    animation-delay: 1.0s;
} 
.menu-open .nav-main > ul.nav-icon-menu > li:nth-child(4){
    animation-delay: 1.1s;
} 
.menu-open .nav-main > ul.nav-icon-menu > li:nth-child(5){
    animation-delay: 1.2s;
} 
.menu-open .nav-main > ul.nav-icon-menu > li:nth-child(6){
    animation-delay: 1.3s;
} 



.nav-main > ul > li > a,
.drop-link-btn{
	position: relative;
	display: flex;
    width: 100%;
	margin: 0 0 var(--main-pad) 0;
	padding: var(--xs-pad) 0;
	line-height:var(--main-pad);
	color: var(--text-color);
	font-size: 32px;
	font-weight: 500;
    text-transform: uppercase;
	text-decoration: none;
	transition: all 0.2s ease;
}
.nav-main > ul > li:last-child > a{
    margin-bottom: 0;
}
.nav-main > ul.nav-clean-menu > li > a:after{
    content: "\f054";
    position: absolute;
    top: 8px;
    right: 0px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    width: var(--main-pad);
    height: var(--main-pad);
    line-height: var(--main-pad);
    background: none;
    font-weight: 300;
    font-size: var(--icon-font);
    font-family: "Font Awesome 6 Pro";
/*
    transform: rotate(0deg);
    transition: transform .2s ease-in-out;
*/
}
.nav-main ul.nav-clean-menu {
	position: relative;
	display: flex;
    flex-direction: column;
    padding: 0px;
    margin: 80px 0px 24px 0px;
}
.nav-main ul.nav-icon-menu {
	position: relative;
	display: flex;
    flex-direction: column;
    margin: 24px 0px 24px 0px;
}
.nav-icon-menu:before,
.nav-icon-menu:after{
    position: absolute;
    content: "";
    top: -24px;
    left: 0;
    width: 100%;
    height: 1px;
    z-index: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(38, 38, 38, 0.16) 0%, rgba(38, 38, 38, 0) 100%);
    opacity: 0;
}

.menu-open .nav-icon-menu:before,
.menu-open .nav-icon-menu:after{
    animation: opac-in-animate 0.7s ease-out forwards;
    animation-delay: 1.0s;
}

.nav-icon-menu:after{
    top: initial;
    bottom: -24px;
}
/*
.nav-main ul.nav-icon-menu:after {
    content: '';
    position: absolute;
    display: block;
    width: 1px;
    height: 100%;
    right: 0px;
    top: 0;
    background: linear-gradient(180deg, rgba(14, 31, 59, 0.00) 0%, rgba(14, 31, 59, 0.16) 50%, rgba(14, 31, 59, 0.00) 100%);
}
*/
.drop-link-btn{
	border: none;
	box-shadow: none;
	background: none;
    border-radius: 5px;
    border-radius: 10px 10px 0px 0px;
    padding-right: var(--med-pad);
    transition: background 0.1s linear;
    transition-delay: 0.1s;
    z-index: 2;
}
.drop-link-btn:after{
    content: "\f107";
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    top: 8px;
    right: 8px;
    width: var(--main-pad);
    padding: 0px 8px 0px 8px;
    height: var(--main-pad);
    line-height: var(--main-pad);
    font-size: var(--sm-icon-font);
    font-family: "Font Awesome 6 Pro";
    font-weight: 300;
    transition: color 0.2s ease;
}
.drop-open .drop-link-btn,
.drop-link-btn:hover{
    color: var(--main-color);
    background: var(--white-color);
    box-shadow: 0px -4px 6px 2px rgba(0, 0, 0, 0.04);
    transition: background 0s linear;
}
div.drop-link-btn{
	cursor: default;
}
.nav-main ul li a:hover,
.nav-main ul li a:focus,
.nav-main ul li a:active {
	color: var(--sub-color);
	transition: all 0.4s ease-out;
}
.drop-link{
	flex-direction: column;	
}
.nav-main .dropdown{
	position: absolute;
	top: 100%;
	top: calc(100% - 20px);
/*	left: 4px;*/
	width: 200%;
	min-width: 336px;
	margin: 0;
	padding:var(--med-pad) var(--mid-pad);
	padding:var(--mid-pad) var(--xs-pad);
	background: var(--white-color);
	border: none;
    border-radius: 0px var(--lg-pad) 15px var(--lg-pad);
	right: 4px;
    border-radius: var(--med-pad) 0px var(--med-pad) 15px;
/*    border-radius: var(--lg-pad) 0px var(--lg-pad) 15px;*/
	box-shadow: 0px 8px 24px rgba(0, 0, 0, 0.08);
    box-shadow: 0px 16px 48px 0px rgba(0, 0, 0, 0.24);
	transform: translateY(0%);
    overflow: hidden;
    z-index: 1;
}

.nav-main .dropdown.dropdown-single{
	min-width: 304px;
}

/*
.show.dropdown {
	display: flex;
	flex-direction: column;	
	animation: drop-show-animate 0.3s ease-out forwards;
}
*/

.dropdown-menu-title{
	position: relative;
	display: none;
	flex-direction: column;
	padding:0;
	margin-bottom: var(--sm-pad);
	color: var(--text-color);
	font-weight: 600;
}
.nav-main .dropdown ul{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	list-style: none;
	margin: 0 -8px;
}
.nav-main .dropdown ul li{
	padding: 0 16px;
    width: 100%;
    margin-bottom: var(--xs-pad);
    opacity: 0;
/*	width: 50%;*/
}

.drop-open .dropdown ul li{
    animation: right-in-animate 0.2s ease-in-out forwards;
}
.dropdown ul li:nth-child(1){
    animation-delay: 0.2s;
}
.dropdown ul li:nth-child(2){
    animation-delay: 0.3s;
} 
.dropdown ul li:nth-child(3){
    animation-delay: 0.4s;
} 
.dropdown ul li:nth-child(4){
    animation-delay: 0.5s;
} 
.dropdown ul li:nth-child(5){
    animation-delay: 0.6s;
} 
.dropdown ul li:nth-child(6){
    animation-delay: 0.7s;
} 
.dropdown ul li:nth-child(7){
    animation-delay: 0.8s;
} 
.dropdown ul li:nth-child(8){
    animation-delay: 0.9s;
} 
.nav-main .dropdown ul li:last-child{
    margin-bottom: 0;   
}
.nav-main .dropdown.dropdown-single ul li{
	width: 100%;
}
.nav-main .dropdown ul li a {
	position: relative;
	display: flex;
    width: 100%;
	padding: var(--xs-pad); 
	line-height: 16px;
	color: var(--text-color);
	text-transform: none;
	font-size: 16px;
	font-weight: 300;
	letter-spacing: 0px;
	border-radius: 5px 15px; 
	text-decoration: none;
	transition: all 0.2s ease;
}
.nav-main .dropdown ul li a:hover,
.nav-main .dropdown ul li a:hover .menu-item-main span{
	color: var(--sub-color);
    transition: all 0.4s ease-out;
}



.menu-icon-link{
    position: relative;
	display: flex;
}


.nav-main > ul > li.menu-icon-link{
	position: relative;
    display: flex;
    width: 100%;
    align-self: flex-start;    
    padding: 0;
/*	background: var(--bg-color); */
}
.nav-main > ul > li.menu-icon-link > a{
	position: relative;
    display: flex;
    width: 100%;    
    padding:var(--sm-pad) var(--xs-pad);
    padding: 0;
	color: var(--text-color); 
    transition: all 0.2s ease;
}
.nav-main > ul > li.menu-icon-link:last-child > a{
    margin-bottom: 0;
}

.nav-main > ul > li.menu-icon-link > a:hover{
	color: var(--sub-color);  
    transition: all 0.4s ease-out;
}

.menu-item-icon{
	position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    width: 24px; 
    height: 24px;
    line-height: 24px;
    font-size: 14px;
    vertical-align: top;    
}

.menu-item-main{
	position: relative;
	display: flex;	
	flex-direction: column;
	justify-content: center;
    font-size: var(--main-font);
	width: calc(100% - 24px);
	padding: 0 var(--xs-pad); 
/*	transition: all 0.2s ease;*/
}
.menu-item-main div{
	position: relative;
	display: flex;
	margin: 0;
	padding: 0 0;
    line-height:var(--main-pad);
	font-weight: 700;
	text-decoration: none;
	transition: all 0.2s ease;
/*
    
	font-weight: 600;
	line-height: 1;
	margin-bottom: 4px;
*/
}
.menu-item-main span{
	position: relative;
	display: block;
	width: 100%;
	font-weight: 300;
	line-height:var(--mid-pad);
    color: var(--light-text-color); 
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}
.nav-header-mobile{
    display: none;
}

.nav-social {
	position: relative;
	display: flex;
	width: 100%;
	padding: 0;
	color: var(--white-color);
}
.nav-socials{
	list-style: none;
	display: flex;
	margin: 0 0 0 64px;
	padding: 0;
    align-self: flex-start;
}
.nav-socials li{
	margin: 0 var(--xs-pad) 0 0;
	padding: 0;
}
.nav-social a{
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;	
	width: var(--med-pad);
	height: var(--med-pad);
	line-height: var(--med-pad);
	color: var(--white-color);
    font-size: 16px;
}
.nav-social a:hover{
	color: var(--white-color);
}


.header-right{
	position: relative;
	display: flex;    
/*    margin-left: auto;*/
    z-index: 4;
}


.header-buttons{
	position: relative;
	display: flex;    
}

.header-button {
	position: relative;
	display: flex;
}
.header-button .button {
	margin-left:var(--mid-pad); 
}
.header-contact-btn-mob{
    display: none;
}

.header-lang {
	position: relative;
	display: flex;
}
.nav-lang{
    margin-left: auto;
}
.lang-dropdown{
	position: relative;
	display: flex;
	padding: 20px 0;
	margin-left:var(--mid-pad); 
}
.nav-lang .lang-dropdown{
    padding: 0;
}
.header-dropdown {
	position: relative;
	display: flex;
	padding: 0;
}
.btn.lang-dropdown-toggle,
.lang-dropdown-toggle {
	position: relative;
	box-shadow: none;
    display: flex;
	height: 40px;
	border: none;
	text-shadow: none;
	font-size: 14px;
	font-weight: 600;	
	text-transform: uppercase;
	color: var(--main-color);
/*	background: var(--bg-color);*/
	border-radius: 12px;
	padding: var(--xs-pad) 28px var(--xs-pad) var(--xs-pad);
}

.home-wrap:not(.menu-open) #header:not(.sticky) .btn.lang-dropdown-toggle,
.home-wrap:not(.menu-open) #header:not(.sticky) .lang-dropdown-toggle,
.nav-lang .btn.lang-dropdown-toggle,
.nav-lang .lang-dropdown-toggle{
    background: var(--bg-color);
    background: transparent;
    color: var(--white-color);
}

.btn.header-dropdown-toggle,
.header-dropdown-toggle {
	margin: 0;
	text-transform: capitalize;
	padding: var(--sm-pad) 44px var(--sm-pad) var(--mid-pad);
}
.lang-dropdown-toggle:hover,
.lang-dropdown-toggle:active, 
.lang-dropdown-toggle:focus,
.lang-dropdown-toggle.btn.show, 
.lang-dropdown-toggle.btn:first-child:active{
	box-shadow: none;
	color: var(--main-color);
/*	background: var(--grey-color);*/
}

.header-dropdown-toggle:hover,
.header-dropdown-toggle:active, 
.header-dropdown-toggle:focus,
.header-dropdown-toggle.btn.show, 
.header-dropdown-toggle.btn:first-child:active{
	box-shadow: none;	
}

.lang-dropdown-toggle img {
	vertical-align: top;
}
.lang-dropdown-toggle:after,
.header-dropdown-toggle:before {
	content: "\f107";
	position: absolute;
	right: 4px;
	top: 8px;
	width: 100%;
	height: 24px;
	width: 24px;
	font-size: var(--icon-font);
	font-family: "Font Awesome 6 Pro";
	font-style: normal;
	font-weight: normal;
	font-size: 14px;
	line-height: 24px;
	font-weight: 300;
	vertical-align: middle;
	color: var(--main-color);
}
#outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .btn.lang-dropdown-toggle, 
#outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .lang-dropdown-toggle:after{
    color: var(--white-color);    
}

.header-dropdown-toggle:before {
	color: var(--white-color);
	top: 12px;
	right: 16px;
}
.header-dropdown-toggle > i,
.btn.header-dropdown-toggle > i{
	position: relative;
    display: inline-flex;
    flex-direction: column;
    width: var(--main-pad);
    height: var(--main-pad);
    line-height: var(--main-pad);
    text-align: center;	
	font-size: 14px;
	margin-right: 4px;
}

.lang-dropdown .dropdown-menu,
.header-dropdown .dropdown-menu {
	position: absolute;
	top: calc(100% + 16px);
	right: 0;
	left: initial;
	float: none;
	min-width: 200px;
	padding:var(--mid-pad);
	border: none;
	border-radius: var(--main-radius);
	box-shadow: 0px 8px 24px rgba(0, 0, 0, 0.08);
	opacity: 0;
	transform: translateY(0%);
}
.lang-dropdown .dropdown-menu:before,
.header-dropdown .dropdown-menu:before{
	display: flex;
	position: absolute;
	flex-direction: column;
	justify-content: flex-end;
	text-align: center;
	right: 24px;
	right: 16px;
	top: -14px;
	width: 24px;
	height: 24px;
	color: #FFFFFF;
	content: "\f2ec";
	font-family: "Font Awesome 6 Pro";
	font-style: normal;
	font-weight: 700;
	font-size: 18px;
	z-index: -1;
}
.lang-dropdown .show.dropdown-menu,
.header-dropdown .show.dropdown-menu {
	margin: 0!important;
	animation: drop-show-animate 0.3s ease-out forwards;
}
.lang-dropdown .dropdown-menu li a,
.lang-dropdown .dropdown-menu li .nav-lang-item,
.header-dropdown .dropdown-menu li a,
.header-dropdown .dropdown-menu li .nav-lang-item{
	position: relative;
	display: flex;
	width: 100%;
	margin: 0;
	padding: var(--sm-pad) var(--sm-pad);
	line-height:var(--main-pad);
	color: var(--main-color);
	border-radius: var(--main-radius);
	border: none;
	box-shadow: none;
	background: var(--white-color);
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	transition: all 0.2s ease;
}
.nav-item-title{
	display: none;
}
.lang-dropdown .dropdown-menu li a:hover,
.lang-dropdown .dropdown-menu li .nav-lang-item:hover,
.header-dropdown .dropdown-menu li a:hover,
.header-dropdown .dropdown-menu li .nav-lang-item:hover{
	font-weight: 600;
	background: var(--bg-color); 
	transition: all 0.2s ease;
}
.nav-lang-img{
	display: none;
	display: flex;
	width:var(--main-pad);
	height:var(--main-pad);
	line-height:var(--main-pad);
	width:20px;
	height:20px;
	line-height:20px;
    margin: 2px 0px;
	margin-right:var(--xs-pad); 
}
.nav-lang-img img{
	width: auto;
	height: 100%;
}


.nav-toggle{
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 80px;
    height: 80px;
    line-height: 80px;
    color: var(--white-color);
    background: var(--white-alpha-color);
    box-shadow: none;
    outline: none;
    border: none;
    border-radius: 0;
    transition: all 0.2s ease;
	overflow: hidden;
    z-index: 4;
}

.header-nav-top .nav-toggle {
	margin: 8px 0px;
}

.nav-icon {
	position: relative;
	display: block;
	width: 24px;
	height: 24px;
}

.nav-icon span,
.menu-ani .nav-icon span {
	display: block;
	position: absolute;
	top: 11px;
	left: 4px;
	right: 4px;
	height: 1px;
	background: var(--text-color);
}
.nav-icon span:before,
.nav-icon span:after,
.menu-ani .nav-icon span:before,
.menu-ani .nav-icon span:after {
	content: "";
	position: absolute;
	display: block;
	left: 0px;
	width: 100%;
	height: 1px;
	background: var(--text-color);
	transition-duration: 0.2s, 0.2s;
	transition-delay: 0.2s, 0s;
}

.header-nav-top .nav-icon span:before,
.header-nav-top .nav-icon span:after,
.header-nav-top .menu-ani .nav-icon span:before,
.header-nav-top .menu-ani .nav-icon span:after {
	background: var(--text-color);
}

.nav-icon span:before,
.menu-ani .nav-icon span:before {
	top: -5px;
	transition-property: top, transform;
}
.nav-icon span:after,
.menu-ani .nav-icon span:after {
	bottom: -5px;
	transition-property: bottom, transform;
}
.menu-ani .nav-icon span,
.menu-open .nav-icon span {
	background: none;
}
.menu-open .nav-icon span:before {
	top: 0;
	width: 100%;
	transform: rotate(45deg);
}
.menu-open .nav-icon span:after {
	bottom: 0;
	width: 100%;
	transform: rotate(-45deg);
}
.menu-open .nav-icon span:before,
.menu-open .nav-icon span:after {
	transition-delay: 0s, 0.2s;
}


.nav-address{
    position: relative;
	display: flex;
    flex-direction: column;
    margin: 24px 0px 24px 0px;
    padding-left: 32px;
    line-height: 28px;
    opacity: 0;
}
.menu-open .nav-address{
    animation: btm-in-animate 0.7s ease-out forwards;
    animation-delay: 1.2s;
}

.nav-address-title{
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 500;
    margin-bottom: 4px;
}
.nav-address-text div{
    color: var(--light-text-color);
}

@keyframes drop-show-animate {
	0% { opacity: 0;
		transform: translateY(48px);
	}
	50% { opacity: 1; }
	100% { opacity: 1;
		transform: translateY(0);
	}
}
.header-app-buttons,
.show-mob,
.nav-main > ul > li.show-mob{
	display: none;
}

/* STICKY HEADER *****************************/

#outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .logo-main-dark,
#header.sticky .logo-main-light,
.white-header .logo-main-light,
.open-menu  .logo-main-light{
    display: none;
}
#outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .logo-main-light,
#header.sticky .logo-main-dark,
.white-header .logo-main-dark,
.open-menu .logo-main-dark{
    display: flex;
    opacity: 0;
    animation: opac-in-animate 0.5s ease-out forwards;
}


/*
#header.sticky .menu-ani .nav-icon span,
.white-header .menu-ani .nav-icon span,
.open-menu .menu-ani .nav-icon span,
#header.sticky .nav-icon span:before, 
.white-header .nav-icon span:before, 
.open-menu .nav-icon span:before, 
#header.sticky .nav-icon span:after, 
.white-header .nav-icon span:after, 
.open-menu .nav-icon span:after, 
#header.sticky .menu-ani .nav-icon span:before, 
.white-header .menu-ani .nav-icon span:before, 
.open-menu .menu-ani .nav-icon span:before, 
#header.sticky .menu-ani .nav-icon span:after,
.white-header .menu-ani .nav-icon span:after,
.open-menu .menu-ani .nav-icon span:after{
    background: var(--text-color); 
}
*/

/*
#outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .nav-icon span, 
#outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .menu-ani .nav-icon span,
*/

#outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .nav-icon span,
#outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .nav-icon span:before, 
#outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .nav-icon span:after, 
#outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .menu-ani .nav-icon span:before,  
#outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .menu-ani .nav-icon span:after{
    background: var(--white-color); 
}

.nav-main-top .nav-toggle{
    color: var(--white-color);
    background: var(--main-color);    
}
/*.nav-main-top .nav-icon span,*/
.nav-main-top .nav-icon span:before,
.nav-main-top .nav-icon span:after{
    background: var(--white-color);
}


#outer-wrapper.show-content-bg #header{
    z-index: 1;
}

#outer-wrapper #header.sticky .nav-icon-btn,
#outer-wrapper:not(.transparent-header, .menu-open) #header:not(.sticky) .nav-icon-btn{
	color: var(--text-color);
/*    background: var(--dark-alpha-color);*/
    background: transparent;
}

/* GENERAL CONTENT STYLES *****************************/


.content-top-wrap{
	margin-bottom:var(--main-pad); 
}

.content-mid-wrap{
	padding-top: 144px;
	margin-bottom:var(--main-pad); 
}

.content-top-text{
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 0 var(--main-pad); 
}
.content-top-tabs{
	position: relative;
	display: flex;
	margin-left: auto;
	padding: 0 var(--main-pad); 
}

.content-main-wrapper {
	position: relative;
	display: flex;
	margin-left: var(--sm-neg);
	margin-right: var(--sm-neg);
}
.content-left,
.content-main {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 0 var(--sm-pad);
}
.content-left{
	width: 33.3333%;	
}
.content-main {
	width: 100%;
}
.content-left + .content-main {
	width: 66.6666%;
}
.content-right {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 30%;
	width: 408px;
	padding-left: 48px;
}

.content-full-screen{
	position: relative;
	display: flex;
	min-height: 80vh;
}
.content-full-left {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 50%;
	background: var(--bg-color);
	padding:var(--xxl-pad);
}
.content-full-right {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 50%;
	max-width: 978px;
	background: var(--white-color);
	padding:var(--xxl-pad) 192px var(--xxl-pad) var(--xxl-pad);
}
.content-full-right .article-main{
    padding: 0;
}
.content-full-left-block{
	position: relative;
	position: sticky;
	top: 176px;
	display: flex;
	flex-direction: column;	
	margin-left: auto;
	width: 420px;
}
.content-full-left-block h3{
	margin-bottom:var(--main-pad); 
}
.content-full-left-block .loader-wrap{
	background: var(--bg-color);
}
.content-full-left-block .modal-success{
	background: var(--bg-color);
}
/*
.content-full-left-block .modal-success-icon{
	border: 2px solid var(--white-color);
	background: var(--white-color);
}
*/

.content-popover{
    display: flex;
    position: fixed;
    flex-direction: column;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 16px;
    background: #FFFFFF;
    transform: translateY(25%);
    opacity: 0;
    transition: all 0.2s ease;
    z-index: 102;
    pointer-events: none;
}
.content-popover-content{
    position: relative;
    display: flex;
    flex-direction: column;
    padding: var(--main-pad) 0;
    width: 50%;
}
.content-popover-title h4{
    font-size: 18px;
    margin-bottom: 12px;
}
.content-popover-text{
    position: relative;
    display: block;
    margin-bottom: 32px;
}
.content-popover-button{
    position: relative;
    display: block;
}
.content-popover-button .button{
/*
    width: 100%; 
    text-align: center;
    justify-content: center;
*/
}
.content-popover-bg{
    display:flex;
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    bottom: 0;
    opacity: 0;
    cursor: pointer;
    background: rgba(var(--main-color-rgb), 0.48);
    pointer-events: none;
    transition: all 0.2s ease;
    z-index: 101;
}
.show-popover .content-popover{
    opacity: 1;
    transform: translateY(0%);
    transition: all 0.4s ease-out;
    pointer-events: auto;
}
.show-popover .content-popover-bg{
    animation: opac-in-animate 0.2s ease forwards;
    pointer-events: auto;
}


/* MAIN BANNER STYLES *****************************/

#banner-wrapper {
	position: relative;
	display: flex;
	flex-direction: column;
}
.banner-main-wrapper {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex: 1;
	z-index: 3;
}

#banner-main {
	position: relative;
	display: flex;
/*	flex-direction: column;*/
    height: 100vh;
    background: var(--dark-main-color); 
}

.banner-bg-image{
    position: relative;
	position: relative;
	display: flex;
	flex-direction: column;
    height: 100%;
    z-index: 1;
}
#banner-main .banner-bg-image img{
    object-fit: cover;
    object-position: center top;
    width: auto;
    height: auto;
    min-width: 100%;
    min-height: 100%;
}
.banner-text-wrap{
	position: absolute;
	display: flex;
	flex-direction: column;
	justify-content: center;	
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	color: var(--white-color);
    z-index: 2;
}
.banner-text{
	position: relative;
	display: flex;
	flex-direction: column;
    width: 48%;
}
#banner-main .banner-text{
	width: 70%;	    
}
/*
.banner-text-big {
    position: absolute;
    z-index: 1;
    right: -5%;
    bottom: -4%;
}
.banner-text-big > div {
    font-size: 200px;
    font-weight: 700;
    font-style: italic;
    text-transform: uppercase;
    background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 80%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    opacity: 0.48;
}
*/
.banner-header{
	position: relative;
	margin-bottom: var(--mid-pad);  
}
#banner-main .banner-header{
    padding-right: 20%;
}
#banner-main .banner-header h1{
	font-size: 72px;
    text-transform: uppercase;
    margin: 0;
    text-shadow: var(--text-shadow); 
}
.banner-text-main{
	position: relative;
	display: flex;
	flex-direction: column;
	font-size: 14px;
    font-weight: 300;
	margin-bottom: var(--lg-pad);  
}
#banner-main .banner-text-main{
	font-size: 24px;
    margin-bottom: 0;
}
.banner-text-main p{
    margin-bottom: 0;    
    text-shadow: var(--text-shadow);    
}
.banner-text p{
   font-size: 20px;
}
.banner-text-button{
	position: relative;
	display: flex;    
}

#banner-main-slider{
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
#banner-main-slider::before {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    background: linear-gradient(180deg, rgba(47, 44, 42, 0.32) 0%, rgba(47, 44, 42, 0) 100%);
    width: 100%;
    height: 10%;
    z-index: 2;
    pointer-events: none;
}
#banner-main-slider .swiper-slide{
    position: relative;
    width: 100%;
    height: 100%;
}
.banner-main-slide{
    position: relative;
    width: 100%;
    height: 100%;
}
/*
#banner-main-slider .banner-text{
    opacity: 0;
    transform: translateY(10%);
    transform-origin: center bottom; 
    
    animation: banner-slide-animate 0.8s ease-out forwards;
    animation-delay: 0.3s;    
}
*/

/*
#banner-main-slider .swiper-slide-active .banner-text{
    opacity: 1;
    transform: translateY(0%);
    transition: all 0.8s ease-out;
}
*/
#banner-main-thumbs{
    position: absolute;
    bottom: 100%;
    bottom: 320px;
    left: 0;  
    width: 200px;
}
#banner-main-pagination{
    position: absolute;
    display: flex;
    flex-direction: row;
    align-items: center;
    top: initial;
    bottom: 100%;
    bottom: 200px;
    padding: var(--main-pad);
    left: 0;  
    width: 120px;
    transform: none;
}
#banner-main-pagination .swiper-pagination-bullet {
    width: var(--mid-pad);
    height: 2px;
    margin: 0 var(--xxs-pad);
    border-radius: var(--med-radius);
}
#banner-main-pagination .swiper-pagination-bullet:after {
    border-radius: var(--med-radius);
}
#banner-main-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    height: 4px;
}

#banner-main-content{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;    
    z-index: 2;
}
.banner-main-content{
    position: relative;
    display: flex;
/*    color: var(--white-color);*/
}
.banner-main-content-wrap{
    position: relative;
    display: flex;
    overflow: hidden;
}
.banner-content-block{
	position: relative;
	display: flex;
    flex-direction: column;
	width: 50%;
	padding:var(--med-pad);
}
.banner-content-block h2{
    margin-bottom: var(--mid-pad);    
}
.banner-content-block p{
      
}
.banner-content-block .button{
    align-self: flex-start;
}
.bcb-1 .banner-content-inline-buttons .button{
    margin-right: 0;
}


.banner-content-main-link{
    position: relative;
    display: flex;
    flex-direction: column;
}

.banner-content-mobile-link{
    display: none;
}
.bcb-1{
    width: 50%;
    padding-left: 0;
}
.bcb-1 .bcb-bg{
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    right: 0%;
    height: 100%;
    width: 200%;
    background: var(--white-color); 
    z-index: 0;
}
.bcb-2{
   color: var(--white-color);  
}
.bcb-2 .bcb-bg{
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    height: 100%;
    width: 200%;
    z-index: 0;
    background: rgba(38, 38, 38, 0.80);
    backdrop-filter: blur(4px);
}
.bcb-2 .content-inline-title:after{
    background: var(--white-color); 
}

.banner-main-float-button{
    position: absolute;
    right: 48px;
    top: -96px;
    opacity: 0;
}

.banner-main-float-button{
    animation: right-in-animate 0.8s ease-in-out forwards;
    animation-delay: 1.4s;
}

.yt-btn{
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    border-radius: 24px;
    background: #F03434;
    color: var(--white-color); 
    border: none;
    padding: 8px var(--main-pad) 8px 16px;
    transition: all 0.2s ease;
}
.yt-btn:hover{
    background: var(--main-color);    
    color: var(--white-color);  
    transition: all 0.4s ease-out;
}
.yt-btn i{
    position: relative;
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    width: var(--main-pad);
    height: var(--main-pad);
    line-height: var(--main-pad);
    font-size: var(--icon-font);
}
.yt-btn div{
    position: relative;
    display: flex;
    flex-direction: column;
    width: calc(100% - 24px);
    padding-left: 8px;
    line-height: 12px;
    font-weight: 500;
    font-size: 12px;
}
.yt-btn div > span{
    display: block;
    font-weight: 300;
    font-size: 10px;
}
.yt-btn.button:after,
a.yt-btn.button:after{
    display: none;
/*
    content: '';
    position: absolute;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    top: 1px;
    right: 1px;
    border-width: 1px;
    border-style: solid;
    border-image: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.32)) 1;
    opacity: 1;
    z-index: 1;
    transition: all 0.2s ease;
*/
}

/* PAGE BANNER STYLES *****************************/

#banner-page{
	position: relative;
	display: flex;
    flex-direction: column;   
}
.banner-top-page #banner-page{
    position: fixed;
    top: 0;
    height: 560px;
    z-index: 1;
}

.banner-top-page #content-main{
    z-index: 2;
    margin-top: 560px;    
}

.banner-main-img{
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    height: 100%;
}
.banner-main-img-main{
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    background: var(--main-color);
}
.banner-main-img-main img{
    max-width: 100%;
    height: auto;
}

.banner-top-page .banner-main-img:after{
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 10%;
    right: 0;
    bottom: 0px;
    background: linear-gradient(180deg, rgba(var(--main-color-rgb), 0.0) 0%, rgba(var(--main-color-rgb), 0.9) 100%);
    z-index: 1;
}
.banner-top-page .banner-main-img-main img{
    height:100%;
    object-fit: cover;
}

#banner-page.banner-container{
    margin-bottom: var(--xxl-pad); 
}
/*
.banner-container .banner-main-img{
    border-radius: var(--main-radius);    
}
*/

.banner-header h1,
.banner-header h2{
	font-size: 48px;
    text-shadow: var(--text-shadow); 
}
.banner-shape {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0%;
    height: 100%;
    width: 33.3333%;
    background: rgba(255, 255, 255, 0.08);
    background: linear-gradient(208deg, rgba(38, 38, 38, 0.00) 0%, #2A2624 100%);
    backdrop-filter: blur(8px);
    z-index: 1;
    overflow: hidden;
}
.grey-shape {
    display: block;
    position: absolute;
    bottom: 50%;
    left: -52%;
    height: 200%;
    width: 112%;
    border-bottom-right-radius: 90px;
    background: var(--bg-color);  
    transform: skewX(-30deg);
    z-index: 0;
}

.banner-scroll-indicator{
    position: absolute;
    display: flex;
    width: 66.66%;
    right: 0;
    bottom: 0;
    color: var(--white-color);
    padding: var(--main-pad) var(--lg-pad);
    line-height: var(--main-pad);
    z-index: 2;
}
.banner-scroll-indicator span{
	position: relative;
	display: flex;
    justify-content: space-between;
    flex-grow: 1;
}
.banner-scroll-indicator span:after{
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 1px;
    left: 0;
    top: 12px;
    background: var(--white-color); 
}
.banner-scroll-indicator div{
    display: flex;
    width: fit-content;
    padding: 0 0 0 var(--main-pad);
}

/* SLIDER STYLES *****************************/

.swiper-slide {
	height: auto;
	width: auto;
	margin: 0 auto;
}
.image-slider{
	margin-left: var(--main-neg); 
	margin-right: var(--main-neg); 
	padding: 0 var(--sm-pad); 
}

.image-slider .swiper-slide{
	padding: 0 var(--sm-pad); 
}

.image-slider .slider-image{
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}
.slider-image img{
	height: 100%;
	width: auto;
}
.swiper-button-next, 
.swiper-button-prev {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    top: calc(50% - var(--main-pad));
    width: var(--lg-pad);
    height: var(--lg-pad);
    margin:0;
    cursor: pointer;
    color: var(--text-color);
	border-radius: var(--main-pad); 
	background: var(--white-color);
	border: 4px solid var(--white-color);
    z-index: 2;
}
.swiper-button-prev{
	left: 0;
	left: var(--main-neg);
}
.swiper-button-next{
	right:0;  
	right: var(--main-neg);  
}
.swiper-button-next:after, 
.swiper-button-prev:after {
    content: "\f178";
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0px;
    font-size: 20px;
    font-family: "Font Awesome 6 Pro";
    font-weight: 300;
    color: var(--text-color);
}
.swiper-button-prev:after {
    content: "\f177";
}

.swiper-pagination-bullet {
    position: relative;
    display: inline-block;
    width: 8px;
    height: 8px;
    margin: var(--xxs-pad); 
    border-radius: 50%;
    background: transparent;
    opacity: 0.32;
    transition: all 0.2s ease-out;
}
.swiper-pagination-bullet:after {
    content: '';
    position: absolute;
    display: block;
    top: 0;
    width: 75%;
    height: 75%;
    top: 12.5%;
    left: 12.5%;
    z-index: 0;
    border-radius: 50%;
    background: var(--white-color);    
    transition: all 0.2s ease-out;
}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--xxs-pad); 
}
.swiper-pagination-bullet-active{
    background: transparent;
    opacity: 0.8;
    transition: all 0.4s ease-out;  
}
.swiper-pagination-bullet.swiper-pagination-bullet-active:after {
    top: 0%;
    left: 0%;
    width: 100%;
    height: 100%;
    transition: all 0.4s ease-out; 
}

.image-controls-wrapper{
    position: relative;
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    align-self: center;
    padding: 4px 28px; 
    color:var(--text-color);
    background: var(--white-color);  
    z-index: 1;
}
.image-controls-wrapper .swiper-pagination.swiper-pagination-fraction{
    position: relative;
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: auto;
    line-height: 16px;
    font-size: 12px;
    bottom: initial;
    left: initial;
}
.image-controls-wrapper .swiper-button-next, 
.image-controls-wrapper .swiper-button-prev {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    top: 0;
    width: var(--main-pad);
    height: var(--main-pad);
    margin:0;
    cursor: pointer;
    color: var(--text-color);
	border-radius:0; 
	background: var(--white-color);
	border: none;
    z-index: 2;    
}
.image-controls-wrapper .swiper-button-prev{
	left: 0;
}
.image-controls-wrapper .swiper-button-next{
	right:0;   
}
.image-controls-wrapper .swiper-button-next:after, 
.image-controls-wrapper .swiper-button-prev:after {
    content: "\f105";
    font-size: 12px;
    color: var(--text-color);
}
.image-controls-wrapper .swiper-button-prev:after {
    content: "\f104";
}

#property-image-controls,
.share-btn-mobile{
    display: none;
}


/* CONTENT BANNER STYLES *****************************/

.content-banner-wrap {
	position: relative;
	display: block;
	padding: 192px 0px;
    background: var(--white-color);
}

.content-offset{
    overflow: hidden;
}
.no-pad-top{
    padding-top: 0px;
}
.no-pad-bottom{
    padding-bottom: 0px;
}
.content-banner-wrap-sm {
	padding: var(--lg-pad) 0px;
}
.content-banner-wrap-top-pad {
	padding-top: var(--xxl-pad);
}
.content-banner-wrap-bottom-pad {
	padding-bottom: var(--xxl-pad);
}
.content-banner {
	position: relative;
	display: flex;
	flex-direction: row;
	margin: 0 var(--main-neg);
}
.content-banner.content-banner-col{
    flex-direction: column;
}

.content-banner-title,
.content-page-title {
	position: relative;
	display: block;
	margin-bottom: var(--sm-pad);
}
.content-inline-title{
	position: relative;
	display: inline-flex;
    align-self: flex-start;
	margin-bottom: var(--sm-pad);    
}
.content-banner-title:after, 
.content-inline-title:after,
.content-page-title:after{
    content: '';
    display: block;
    position: absolute;
    width: 56px;
    height: 1px;
    background: var(--sub-color); 
}
.content-page-title:after,
.content-banner-title:after{
    top: -12px;
    left: 0;
}
.content-banner-center .content-banner-title:after{
    left: calc(50% - 23px);
}
.content-inline-title:after{
    top: 50%;
    right: -68px;
}

.content-page-title h1{
    font-size: 24px;
}

.content-banner-title.extra-margin{
	margin-bottom: var(--main-pad);    
}
.content-banner-title h1,
.content-banner-title h2,
.content-banner-title h3,
.content-banner-title h4,
.content-inline-title h1,
.content-inline-title h2,
.content-inline-title h3,
.content-inline-title h4{
    margin: 0;
}
.banner-inline-block .content-banner-title,
.banner-inline-block .content-banner-title{
    margin-bottom: var(--xs-pad); 
}
.banner-inline-block .content-banner-title h2,
.banner-inline-block .content-banner-title h3{
    line-height: 1.2;
}
.banner-blk-row .content-banner-title {
    margin-bottom: 0;
}
.content-banner-title h2 b{
    font-style: normal;
    font-weight: 700;
    color: var(--sub-color);
}
.banner-blk-txt,
.banner-blk-img {
	position: relative;
	display: flex;
	width: 50%;
	padding: 0px var(--main-pad);
	align-content: flex-start;
/*	align-self: center;*/
	flex-direction: column;
}
.banner-blk-row {
    display: flex;
    flex-direction: row;
    margin-bottom: var(--mid-pad);
}
.content-banner.content-banner-col .banner-blk-row {
    margin-bottom: 0;
}
.banner-blk-row.banner-blk-row-full {
    width: 100%;
    gap: var(--lg-pad);
    margin: 0;
}
.banner-blk-row .banner-blk-left {
    width: 50%;
}
.banner-blk-row .banner-blk-right {
    width: 50%;
}
.banner-blk-row > a {
    margin-left: auto;
}
.banner-blk-sm {
	padding: 0 10%;
}
.banner-blk-lg {
    width: 72%;
    margin: 0 auto;
}
.banner-blk-txt-full{
	width: 100%;
}
.banner-blk-txt-margin {
	margin-bottom: var(--main-pad);
}
.banner-blk-offset{
    margin-left: calc(33.333% + var(--lg-pad));
    margin-left: calc(33.333% + 32px);
}
.banner-blk-full{
	position: relative;
	display: flex;
	width: 100%;
	padding: 0px var(--main-pad);
	margin-bottom: var(--lg-pad);
}
/*
.banner-blk-full .button{
	margin-left: auto;
}
*/
.banner-txt-left .banner-blk-txt {
	padding-right: 144px;
}
.banner-txt-right .banner-blk-txt {
	padding-left: 144px;
}
.banner-blk-txt .button,
.banner-blk-txt .txt-btn{
	align-self: flex-start;
}
.banner-blk-txt .button{
    margin-top: var(--main-pad); 
}
.banner-blk-txt.btn-end{
	align-items: flex-end;
	justify-content: flex-end;
}
.banner-blk-txt.btn-end .button{
	align-self: flex-end;
}
.banner-blk-button{
    position: absolute;
    right: var(--main-pad);
    bottom: var(--lg-pad);
}
.banner-content-inline-buttons{
    position: relative;
    display: flex;    
}
.banner-content-inline-buttons .button{
    margin-right: var(--mid-pad);   
}
.banner-content-inline-buttons-right{
    position: relative;
    display: flex;  
    justify-content: flex-end;
}
.banner-content-inline-buttons-right .button{
    margin: 0;
    margin-left: var(--mid-pad);   
}
.banner-blk-buttons {
    display: flex;
    flex-direction: row;
    gap: var(--mid-pad);
}
.banner-blk-txt.align-txt-bottom{
    justify-content: flex-end;
}
.banner-blk-txt.align-txt-bottom .intro-txt{
    margin-bottom: 8px;
}
.banner-blk-txt.align-txt-bottom p{
    margin: 0;
}
.banner-blk-txt ul{
    list-style: none;
    margin: 0;
    padding: 0;
}
.banner-blk-txt ul li{
    position: relative;
    line-height: 1.6;
    line-height: var(--main-pad);
    margin: 0;
    margin-bottom: var(--xxs-pad);
    padding: 0 0 0 var(--main-pad);
}
.banner-blk-txt ul li:before{
    content: '';
    position: absolute;
    left: 0;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--sub-color); 
    top: 10px;
}
.large-list.banner-blk-txt ul li{
    line-height: var(--main-pad); 
    margin-bottom: var(--mid-pad);
}

.content-info-list.margin-top {
    margin-top: var(--lg-pad);
}

.content-info-list-item{
	position: relative;
	display: flex;
	padding: var(--xs-pad) var(--mid-pad);
	line-height: var(--med-pad);
	background: var(--bg-color); 
/*	margin-bottom: var(--xs-pad);*/
	flex-grow: 1;
}
.content-info-list-item:nth-child(even){
    background: rgba(38, 38, 38, 0.04);    
}
.content-info-list-item:last-child{
	margin-bottom: 0;
}

.content-info-list h5 {
    margin-bottom: var(--mid-pad);
}

.content-info-list-title{
	position: relative;
	display: flex;	
	width: 50%;
}
.content-info-list-text{
	position: relative;
	display: flex;	
	width: 40%;
}
.content-info-list-extra{
	position: relative;
	display: flex;	
	justify-content: flex-end;
	width: 10%;
}
.content-info-list-text > span{
	padding: 0 var(--mid-pad);
}
.content-info-list-title> span,
.content-info-list-extra > span,
.content-info-list-text > span{
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
/*
.animate .content-info-list-item{
    animation: right-in-animate 0.8s ease-in-out forwards;
}
.content-info-list-item:nth-child(1){
    animation-delay: 0.2s;
}
.content-info-list-item:nth-child(2){
    animation-delay: 0.4s;
}
.content-info-list-item:nth-child(3){
    animation-delay: 0.6s;
}
.content-info-list-item:nth-child(4){
    animation-delay: 0.8s;
}
.content-info-list-item:nth-child(5){
    animation-delay: 1.0s;
}
.content-info-list-item:nth-child(6){
    animation-delay: 1.2s;
}
.content-info-list-item:nth-child(7){
    animation-delay: 1.4s;
}
.content-info-list-item:nth-child(8){
    animation-delay: 1.6s;
}
*/

.content-banner-text {
	position: relative;
	color: var(--text-color);
    color: var(--light-text-color);
	margin-bottom: var(--lg-pad);
}
.intro-txt{
    font-size: 24px;
    line-height: 1.4;
	margin-bottom: var(--main-pad);
}
.lg-txt{
    font-size: 18px;
    line-height: 1.4;    
}
/*.banner-blk-txt .content-banner-text:last-child {*/
.banner-blk-txt .content-banner-text:last-of-type:not(:only-of-type) {
	margin: 0;
}
.content-banner-text.no-margin {
	margin-bottom: 0px;
}

.intro-txt p,
.content-banner-text p:last-child {
	margin-bottom: 0px;
}
.content-banner-buttons {
	display: flex;
}
.content-banner-buttons .button {
	margin-right: var(--mid-pad);
}
.content-banner-title + .content-banner-buttons {
	margin-top: var(--lg-pad);
}
.blk-txt-left{
   text-align: left; 
}

.banner-title-full{
    position: relative;
	flex-direction: column;
	color: var(--text-color);
    margin-bottom: var(--lg-pad);
}
.banner-title-full h2{
    margin: 0;
}

.banner-blk-img {
	width: 50%;
}
.banner-img-full {
    display: flex;
    height: 100%;
	width: 100%;
}
.banner-blk-img span{
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: var(--lg-radius) var(--med-radius);
}
.banner-img-full span{
    position: relative;
    display: block;
    overflow: hidden;
}
.banner-blk-img img, 
.banner-img-full img {
	height: auto;
	image-rendering: -webkit-optimize-contrast;
}

.banner-fade-img{
    position: relative;
    display: block;
    align-self: center;
	-webkit-mask-image: linear-gradient(180deg, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 100%);
	mask-image: linear-gradient(180deg, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 100%); 
}
/*
.banner-fade-img:after{
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(var(--sub-color-rgb), 0) 50%, rgba(var(--sub-color-rgb), 1) 100%);
}
*/

.blk-bg-light > *,
.blk-bg-dark > *{
    position: relative;
    z-index: 1;
}
.blk-bg-light{
    padding: 112px 136px ;
}
.blk-bg-dark{
    padding: 112px 136px;
    color: var(--white-color);
}
.blk-bg-light:after{
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    right: 2px;
    z-index: 0;
    background: var(--bg-color);
}
.blk-bg-dark:after{
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 2px;
    z-index: 0;
    background: var(--main-color);
}

.content-blocks-wrap .banner-img-full img{
    height: 100%;
    width: 100%;
    max-width: initial;
    object-fit: cover;
    object-position: left center;
}

.content-banner-center {
/*	flex-direction: column;*/
	justify-content: center;
}
.content-banner-center .banner-blk-txt {
	text-align: center;
	width: 50%;
	margin-bottom: var(--lg-pad);
}
.content-banner-center > .content-banner-title {
	text-align: center;
	margin-bottom: var(--mid-pad);
}
.content-banner-center .banner-blk-txt .btn,
.content-banner-center .banner-blk-txt .button{
	align-self: center;
	margin-top: var(--main-pad);
}

.content-banner-center .blk-txt-left{
    text-align: left;
}
.content-banner-center .blk-txt-left .txt-btn{
	align-self: flex-start;
	margin-top: var(--main-pad);
}
.banner-blk-txt.no-pad,
.content-banner-center .banner-blk-txt.no-pad{
	margin: 0;
}
.center-blk-img {
	position: relative;
	display: flex;
	width: 50%;
	flex-direction: column;
	padding: 0px;
	margin: 0 auto;
}
.center-blk-img img{
	width: 100%;
	height: auto;
}
.single-title h1,
.single-title h2,
.single-title h3{
	margin: 0;
}
.banner-blk-txt.single-button{
	margin: var(--lg-pad) 0 0 0 ;
}

.banner-inline-block{
	position: relative;
	display: flex;
	flex-direction: column;
/*    flex-wrap: wrap;*/
}
.banner-inline-txt{
    padding: var(--lg-pad);
}
.banner-inline-txt .txt-btn{
    margin-top: var(--main-pad);
    margin-top: auto;
    align-self: flex-start;
}

.banner-inline-img{
 	position: relative;
	display: flex;
	flex-direction: column;   
    margin-top: var(--main-pad); 
}
.banner-inline-img img{
 	width: 100%;
	height: auto;   
}
.bi-1{
    color: var(--white-color); 
    background: var(--light-main-color);
    border-radius: var(--lg-radius) 0 0 0;
    padding-right: var(--xl-pad);
    overflow: hidden;
}
.bi-1 p{
    color: var(--light-text-color); 
}
.bi-2{
    border-radius: 0 0 0 var(--lg-radius);
    overflow: hidden;
}
#content-banner-blocks .bi-1{
    height: auto;
    min-height: calc(50% - var(--sm-pad));
    min-height: 280px;
}
#content-banner-blocks .bi-2{
    min-height: calc(50% - var(--sm-pad));
    min-height: 280px;
}

.content-blocks-small .banner-inline-block{
    margin-right: 1px;
}
.content-blocks-small .inline-block-sm{
    width: 50%;
    width: calc(50% - 1px);
/*    height: 50%;*/
    flex-grow: 1;
}
.content-blocks-small .inline-block-sm p{
    margin: 0;
}
.content-blocks-small .bi-1{
    min-height: 50%;
    margin-bottom: 1px;
    background: var(--light-main-color);
    background-size: 25%;
    padding-right: var(--xl-pad);
}
.content-blocks-small .bi-2{
    background: var(--bg-color);
}
.content-blocks-small .bi-3{
    background: var(--bg-color);
}

#content-banner-blocks .bi-2 div {
    position: relative;
    display: block;
    overflow: hidden;
    height: 100%;
}

#content-banner-blocks .bi-2 img{
    height: 100%;
    width: 100%;
    max-width: initial;
    object-fit: cover;
    object-position: center;
}

.banner-large-text{
	position: relative;
	display: flex;
    font-weight: 600;
    font-size: 56px;
    line-height: 64px;
    margin-bottom: 32px;
    width: 100%;
}

.content-banner-full-img {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 0px;
}
.banner-full-img-wrap {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 0px;
}
.banner-full-img {
	position: relative;
	overflow: hidden;
	border-radius: var(--main-radius);
	box-shadow: var(--main-shadow);
	padding: 0;
	width: 100%;
}
.banner-full-img img {
	width: 100%;
	height: auto;
}
.content-banner-wrap.full-image-banner{
    padding: var(--xxl-pad) 0;
}

.full-image-img{
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: 50%;
    height: 100%;
    bottom: 10%;
    right: 0;
    z-index: 0;
    overflow: hidden;
}
.full-image-img span{
    position: relative;
    display: block;
}
.full-image-img img{
    height: 100%;
    width: 100%;
    max-width: initial;
    object-fit: contain;
    object-position: left center;
}
.full-image-banner .banner-blk-txt{
    justify-content: center;
}

.banner-blk-inline-title{
	position: relative;
	display: flex;	
	flex-grow: 1;
	justify-content: space-between;
	padding: 0px var(--main-pad);
	margin-bottom: var(--lg-pad);
}
.banner-blk-inline-title .content-banner-title{
	margin: 0;
}
.banner-blk-inline-title .content-banner-title h1,
.banner-blk-inline-title .content-banner-title h2,
.banner-blk-inline-title .content-banner-title h3{
	line-height: var(--lg-pad);
	margin: 0;
}
.banner-blk-inline-title .button{
	margin-left: auto;
}

.banner-blk-inline{
	position: relative;
	display: flex;	
	background: var(--bg-color);
	border-radius: var(--main-radius);
	padding: var(--xs-pad) var(--main-pad);
	margin: 0 var(--main-pad); 
}
.content-banner-center .banner-blk-inline{
	justify-content: center;
}
.banner-blk-inline div{
	font-weight: 600;
	padding: 0 var(--xs-pad);
	line-height: var(--main-pad);
}
.banner-blk-inline div span{
	font-weight: 300;
}
.content-banner-center .highlight-text{
    margin-top: 120px;
}
.highlight-text p{
    font-size: 24px;
    color: var(--med-text-color);
}
.light-banner{
	background: var(--bg-color); 
}

.light-banner-block .content-banner{
    flex-wrap: wrap;
    background: var(--bg-color); 
    margin: 0;
    padding: 112px 64px; 
}
.dark-banner-block .content-banner{
    flex-wrap: wrap;
	background: var(--dark-main-color); 
	color: var(--white-color);
    margin: 0;
    padding: 112px 64px; 
}

.dark-banner-block h2,
.dark-banner-block h3,
.dark-banner-block h4 {
	color: var(--white-color); 
}
.dark-banner-block .content-banner-text{
	color: var(--white-color);     
}

.banner-txt-info-row {
    display: flex;
    flex-direction: row;
}

.content-sticky-footer {
    position: fixed;
    bottom: 0;
    display: none;
    width: 100%;
    background: var(--white-color);
    box-shadow: 0 -4px 4px 0 rgba(0, 0, 0, 0.08);
    padding: var(--mid-pad);
    z-index: 2;
    transform: translateY(100%);
    transition: transform 0.8s linear(0, 0.012 0.9%, 0.05 2%, 0.411 9.2%, 0.517 11.8%, 0.611 14.6%, 0.694 17.7%, 0.765 21.1%, 0.824 24.8%, 0.872 28.9%, 0.91 33.4%, 0.939 38.4%, 0.977 50.9%, 0.994 68.4%, 1);
}
.animate.content-sticky-footer {
    transition-delay: 0.4s;
    transform: translateY(0);
}


.content-sticky-footer .button {
    width: 100%;
    width: calc(50% - 8px);
}
.content-sticky-footer .property-select-view {
    width: calc(50% - 8px);
}


/* IMAGE BANNER STYLES *****************************/

#image-banner {
    overflow: hidden;
}

#image-banner .container{
    position: relative;
}

#image-banner .content-banner{
/*    padding: var(--xl-pad) var(--lg-pad);*/
    color: var(--white-color);
    z-index: 2;
}

#image-banner .content-banner .banner-blk-txt{
    opacity: 0;
    margin-top: 18%;
}

#image-banner .banner-bg-img,
#image-banner .banner-bg-slider{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0%;
    left: 0%;
    
    width: calc(100% + 128px);
    height: calc(100% + 224px);
    left: -64px;
    top: -112px;
    
    background-color: var(--main-color); 
    background-position: center center;
    background-size: cover;
    transform: scale(0.88);
    transition: transform 0.05s linear;
    will-change: transform;    
    z-index: 1;
}

#image-banner .banner-bg-slider{
    background: none;
}
.banner-bg-overlay{
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: 0%;
    left: 0%;
    display: block;
    background: radial-gradient(95.8% 127.27% at 2.5% 96.41%, rgba(38, 38, 38, 0.80) 31.61%, rgba(38, 38, 38, 0.00) 100%);
    z-index: 1;
    pointer-events: none;
}

#image-banner.animate .banner-bg-img,
#image-banner.animate .banner-bg-slider{
    transform: scale(1);
    transition: transform 0.8s ease-out;
}
#image-banner.animate .content-banner .banner-blk-txt{
    animation: opac-in-animate 0.8s ease-in forwards;
    animation-delay: 0.2s;
}

#image-banner .banner-bg-slider img{
    width:100%; 
    height:100%; 
    object-fit: cover;
    object-position: 50% 50%;    
}

#image-banner-slider{
    position: relative;
    display: flex;
    width: 100%;
    height: 100%;
}

#image-banner #image-banner-controls{
    position: absolute;
    top:-10%;
    left: 24px;
    opacity: 0;
}
#image-banner.animate #image-banner-controls{
    animation: opac-in-animate 0.8s ease-in forwards;
    animation-delay: 0.6s;
}
#image-banner #image-banner-controls.swiper-controls .swiper-scrollbar{
    margin-right: 0;
    margin-left: 24px;
}


/* LISTING STYLES *****************************/


.listings-header{
    position: relative;
    display: flex;
    margin-bottom: var(--lg-pad);  
    opacity: 0;
    animation: opac-in-animate 0.8s ease-in forwards;
}
.listings-header .content-page-title{
    margin-top: var(--sm-pad);
    margin-bottom: 0;
}

.listings-header span {
    color: var(--sub-color);
}

.listings-filter-buttons{
    position: relative;
    display: flex;
    justify-content: flex-end;
    margin-left: auto;
}

#listing-wrapper{
    margin-bottom: var(--xxl-pad);    
}

.listing-blocks{
    position: relative;
    display: flex;
    flex-wrap: wrap;
}

.listing-block-wrap{
    position: relative;
    display: flex;
    flex-direction: column;
    width: 33.3333%;
    padding: 0 2px;
    margin-bottom: var(--main-pad);
}

.listing-block{
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    transition: all ease-out 0.4s;
}
.listing-link:hover .listing-block{
    transition: all ease-in-out 0.7s;
}
.listing-link{
    position: relative;
    display: flex;
    flex-direction: column;
    text-decoration: none;
}
.listing-block-image{
    position: relative;
    display: block;
    overflow: hidden;
/*
    flex-direction: column;
    justify-content: flex-end;
*/
    height: 100%;
    width: 100%;
    transition: all ease-out 0.4s;
    aspect-ratio: 1 / 1;
}
.listing-link:hover .listing-block-image{
    height: 80%;
    transition: all ease-in-out 0.7s;
}
.listing-image-main{
    position: relative;
    display: block;
    width:100%; 
    height:100%;
    aspect-ratio: 1 / 1;
    z-index: 1;
}
.listing-image-main img{
    max-width: initial;
    width:100%; 
    height:100%;
}
.listing-image-main img{
    max-width: initial;
    height:125%;
    width:100%; 
    object-fit: cover;
    object-position: 50% 50%;
    transition: all ease-out 0.4s;
}
.listing-link:hover .listing-image-main img{
    height:100%;
    transition: all ease-in-out 0.7s;
}
.listing-block-content{
    position: absolute;
    display: flex;
    flex-direction: column;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    color: var(--white-color);
    z-index: 2;    
}

.listing-block-header{
    position: relative;
    display: flex;  
    padding: 0 0 var(--lg-pad) 0;
    background: linear-gradient(180deg, rgba(38, 38, 38, 0.48) 0%, rgba(38, 38, 38, 0) 100%);
}
.listing-partner{
    position: relative;
    display: flex;
    width: 50%;
}
.listing-partner img{
    height: 80px;
    width: auto;
    margin-left: -8px;
/*
    margin-top: -14px;
*/
}
.listing-date{
    position: relative;
    display: flex;
    justify-content: flex-end;
    padding: var(--main-pad) var(--main-pad) 0 var(--main-pad);
    width: 50%;
}
.listing-date span{
    position: relative;
    display: flex;
    font-weight: 500;
    height: var(--med-pad); 
    line-height: var(--main-pad); 
    padding: var(--xxs-pad) var(--mid-pad);
    text-shadow: var(--chip-text-shadow);
    background: var(--chip-white-alpha-color);
    backdrop-filter: blur(4px);
}
.listing-content-bottom{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    margin-top: auto;
    padding: var(--lg-pad) var(--main-pad) var(--main-pad) var(--main-pad);
    background: linear-gradient(180deg, rgba(38, 38, 38, 0) 0%, rgba(38, 38, 38, 1) 100%);
    background: var(--dark-linear-gradient);
}
.listing-content-bottom span{
    display: block;
    width: 100%;
}
.listing-prices{
    position: relative;
    display: flex;    
}
.listing-price{
    position: relative;
    display: inline-flex;  
    font-size: 18px;
    text-transform: uppercase;
    font-weight: 500;
    line-height: var(--main-pad); 
    padding: 0 var(--mid-pad);
}
.listing-price:first-child{
    padding-left: 0;
}

/*
.listing-price:first-child:after{
    content: '';
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 1px;
    height: 100%;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.00) 0%, rgba(255, 255, 255, 0.24) 50%, rgba(255, 255, 255, 0.00) 100%);
}
*/

.listing-block-description{
    position: relative;
    display: flex;    
    flex-direction: column;
    padding: var(--main-pad);
    color: var(--text-color);
}
.listing-block-title{
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 500;
}

/* FILTER STYLES *****************************/

.filter-button{
    position: relative;
    display: flex; 
    background: var(--bg-color);
    cursor: pointer;
    transition: all 0.2s ease;
}
.filter-button:hover{
    background: var(--sub-bg-color);
    transition: all 0.5s ease-out;
}
.fb-icon{
    position: relative;
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    width: var(--lg-pad);
    height: var(--lg-pad);
    line-height: var(--lg-pad);
    font-size: var(--icon-font);
}
.fb-title{
    position: relative;
    display: inline-flex;
    padding-right: var(--main-pad); 
    line-height: var(--lg-pad);
    width: calc(100% - var(--lg-pad));
}
.fb-title span{
    margin-left: var(--xxs-pad); 
    color: var(--sub-color);
    font-weight: 500;
}
.fb-web{
    display: inline-flex;
}
.fb-mob{
    display: none;
}

#main-filters{
    position: absolute;
    display: flex;
    left: -640px;
    top: 0;
    flex-direction: column;
    padding: 0;
    width: 640px;
    height: 100dvh;
    flex-grow: 1;
    background: var(--white-color);
    transition: left 0.2s ease;
    z-index: 99;
}
.show-filters#main-filters {
    left: 0;
    transition: left 0.4s ease-out;
}
.main-mob-filters {
    display: none;
}
.main-filter-wrapper{
    position: relative;
    display: flex;
    flex-direction: column; 
    height: 100%;
/*    padding: var(--xl-pad) var(--lg-pad) var(--lg-pad) var(--lg-pad); */
}
.main-filter-header {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px var(--main-pad);
}
.main-filter-header .logo-main-dark {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
}
.main-filter-title{
    position: relative;
    display: flex;
    flex-direction: column;
    padding: var(--xl-pad) var(--lg-pad) var(--lg-pad) var(--lg-pad);
}
.main-filter-title h2{
    position: relative;
    margin: 0;
}
.main-filter-title h2:after{
    content: '';
    display: block;
    position: absolute;
    width: 56px;
    height: 1px;
    top: -16px;
    background: var(--sub-color); 
}
.main-filter-blocks{
    position: relative;
    display: flex;
    flex-direction: column; 
    flex-grow: 1;
    overflow: hidden;
    padding: 0 40px 0 var(--lg-pad);
    margin-right: 8px;
}
.main-filter-buttons{
    position: relative;
    display: flex;
    padding: var(--lg-pad) var(--lg-pad) var(--lg-pad) var(--lg-pad);
    justify-content: space-between;
}
.main-filter-buttons .button{
    width: calc(50% - var(--xs-pad));
}
.map-page .main-filter-buttons {
    display: none;
}
.main-footer-buttons {
    position: relative;
    display: flex;
    padding: var(--main-pad) var(--lg-pad) var(--main-pad) var(--lg-pad);
    justify-content: space-between;
}
.main-footer-buttons .button {
    width: 100%;
}
.filter-block-wrap{
	position: relative;
	display: flex;
    flex-wrap: wrap;
    column-gap: 24px;
}
.filter-block{
	position: relative;
    display: flex;
    flex-direction: column;
    align-self: flex-start;
    width: 100%;
	color: var(--text-color);
    border-top: 1px solid var(--border-color);
    border-bottom: 1px solid var(--border-color);
    opacity: 1;
    transition: all 0.2s ease;
}
.filter-block.disabled {
    opacity: .48;
    pointer-events: none;
    transition: all 0.3s ease;
}
.filter-title{
	position: relative;
	border: none;
    background: none;
    padding: 20px 48px 20px 0px;
    line-height: var(--main-pad);
    font-size: 14px;
    outline: none;
    border-radius: 0;
    color: var(--text-color);
	transition: all 0.2s ease-in-out;
}
.filter-title:hover,
.filter-title:not(.collapsed){
	color: var(--sub-color);
}
.filter-title h5{
    text-transform: none;
    text-transform: uppercase;
	margin: 0;
    font-weight: 500;
	line-height: var(--main-pad);
}
.filter-title.accordion-button:after {
	content: "\2b";
    position: absolute;
    top: 20px;
    right: 16px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    width: var(--main-pad);
    height: var(--main-pad);
    line-height: var(--main-pad);
    background: none;
    font-weight: 300;
    font-size: var(--icon-font);
    font-family: "Font Awesome 6 Pro";
    color: var(--sub-color);
	transform: rotate(0deg);
    transition: transform .2s ease-in-out;
}
.filter-title.accordion-button:not(.collapsed):after {
    content: "\f068";
    background: none;
    transform: rotate(-180deg);
}
.filter-block-content{
	position: relative;
	display: block;
    color: var(--text-color);
	padding: 0 0 var(--main-pad) 0;
}
.filter-block-content h5{
    text-transform: none;
}

.filter-block-content p:last-child{
	margin-bottom: 0;
}
.filter-cols{
    display: flex;
    justify-content: space-between;
}
.filter-col{
    display: flex;
    flex-direction: column;
    width: calc(50% - var(--sm-pad));
}

.filter-checkboxes .ch-btn label span{
    background: var(--bg-color);
}

.form-select-grey .selectric,
.form-select-grey .selectric-items,
.form-select-grey .selectric-open.selectric-below .selectric,
.form-select-grey .selectric-open.selectric-above .selectric,
.filter-block-content .form-select-box .selectric,
.filter-block-content .form-select-box .selectric-items,
.filter-block-content .form-select-box .selectric-open.selectric-below .selectric,
.filter-block-content .form-select-box .selectric-open.selectric-above .selectric{
    background: var(--bg-color);
}
.filter-block-content .form-select-box .selectric-items li.highlighted {
    background: var(--input-highlight-color);
}
.filter-block-content .form-select-box .selectric-open,
.filter-block-content .form-select-box .selectric-open.selectric-below .selectric-items{
    box-shadow: none;
}


/* LISTING STYLES *****************************/

.listing-page #content-wrapper {
    padding: 0;
}

.listing-main-banner{
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100dvh;
    overflow: hidden;
}
.listing-banner-image{
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    background-size: auto 120%;
    background-position: center 0%;
    background-repeat: no-repeat;
    z-index: 1;
}
.listing-banner-image:after{
    content: '';
    position: absolute;
    display: flex;
    width: 100%;
    height: 60%; 
    bottom: 0;
    left: 0;
    background: var(--dark-linear-gradient);
    pointer-events: none;
    z-index: 1;
}


.listing-banner-image-img{
    display: none;
    opacity: 0;
}
.listing-banner-image img{
    height: 100%;
    width:100%; 
    object-fit: cover;
    object-position: 50% 50%;
}

.listing-title-block{
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%; 
    top: 0;
    background: var(--white-color);
    mix-blend-mode: screen;
    z-index: 2;
}


/*
@keyframes scale-title-animate {
	0% {
		transform: scale(1);
        opacity: 1;
	}
    80%{
        opacity: 1;
    }
	100% {
        opacity: 0;
		transform: scale(20);
	}
}
*/

.listing-banner-image:before{
    content: '';
    position: absolute;
    display: flex;
    width: 100%;
    height: 100%; 
    top: 0;
    left: 0;
    background: radial-gradient(60% 66% at 0% 0%, rgba(177, 153, 127, 0.36) 0%, rgba(177, 153, 127, 0) 100%);
    pointer-events: none;
    z-index: 3;
}

.listing-title{
    position: relative;
    display: flex;
    flex-direction: column;
    text-align: center;
    width: 80%;

}
.listing-title h1{
    font-size: 72px;
}
.listing-content{
    position: relative;
    display: flex;
    flex-direction: column;   
}

.listing-title-content{
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%; 
    top: 0;
    z-index: 4;
    color: var(--white-color);
}
.listing-title-content .container{
    position: relative;
    display: flex;
}
.listing-title-content-left,
.listing-title-content-right{
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 50%;
}
.listing-title-content-right{
    align-items: flex-end;
}
.listing-title-partner{
    position: relative;
    display: flex;
    opacity: 0;
    transform: translateX(25%);
}

.lt-info-blocks{
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;    
}
.lt-info-block{
    position: relative;
    display: flex;
    flex-direction: column;
    padding: var(--main-pad) 0;
    opacity: 0;
    transform: translateX(15%);
}

.lt-info-block:before{
    content: '';
    display: block;
    position: absolute;
    width: 56px;
    height: 1px;
    top: 0px;
    left: 0;
    background: var(--sub-color);
}

.lt-info-block-content{
    font-size: 48px;
	font-weight: 500;
	line-height: 1.2;
    text-transform: uppercase;
    text-shadow: var(--text-shadow);  
}
.lt-info-block-title{
    font-size: 14px;
	font-weight: 400;
	line-height: 24px;
    text-transform: uppercase;
    text-shadow: var(--text-shadow);  
}

#location-banner {
    padding: 0;
}

#main-images{
    overflow: hidden;
}
#main-image-slider.slider-wrapper{
    overflow: initial;
}
#main-image-slider .swiper-slide{
    padding: 0 2px;
}
#main-images:after{
    content: '';
    position: absolute;
    width: 100%;
    height: 50%;
    left: 0;
    bottom: 0;
    background: var(--sub-bg-color);
    z-index: 0;
}

#facilities{
    padding-top: 0;
    background: var(--sub-bg-color);
}

#facilities .content-image-blocks{
    margin-top: var(--lg-pad);  
}

#prices-image-slider .swiper-slide{
    padding: 0 2px;
}
#prices-image-slider .swiper-img-link{
    border: 1px solid var(--border-color);
}

/* PROPERTY PAGE *****************************/

.property-page {    
    background: radial-gradient(60% 66% at 0% 0%, rgba(177, 153, 127, 0.36) 0%, rgba(177, 153, 127, 0.00) 100%);
    background: radial-gradient(40% 25% at 0% 0%, rgba(177, 153, 127, 0.36) 0%, rgba(177, 153, 127, 0.00) 100%);
}

.property-page .content-scroll{
    scroll-margin-top: 208px;
}

.open-menu .property-page #content-wrapper{
    background: var(--white-color);
}

.property-page #content-main,
.property-page .content-banner-wrap{
    background: transparent;
}
.property-page #content-main{
    margin-top: var(--lg-pad); 
    margin-bottom: var(--xxl-pad); 
}
.property-page .content-banner-wrap-sm .content-banner-title{
    margin-bottom: var(--main-pad);     
}

#property-top.sticky-padding{
    padding-top: 96px;
}

#property-top-info {
    position: relative;
    margin-bottom: var(--lg-pad); 
}

#property-top-info.sticky-bar{
    position: fixed;
    top: 80px;
    width: 100%;
    left: 0;
    padding: 16px 0;
    margin: 0;
    background: var(--white-color);
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.08);
    animation: opac-in-animate 0.2s ease-in forwards;
    z-index: 4;
}
#property-top-info.sticky-bar .property-top-title{
    margin: 0;
}
#property-top-info.sticky-bar .property-title h1{
    font-size: 20px;
    line-height: 48px;
}
#property-top-info.sticky-bar .property-title h1:before{
    display: none;
}

.property-top-title{
    display: flex;
/*    margin-bottom: var(--lg-pad); */
}
.property-title{
    display: flex;
    flex-direction: column;
    width: 42%;
}
.property-title h1{
    position: relative;
    font-size: 32px;
    margin: 0;
}
.property-title h1:before{
    content: '';
    display: block;
    position: absolute;
    width: 56px;
    height: 1px;
    top: -12px;
    left: 0;
    background: var(--sub-color);
}
.property-top-wrapper{
    display: flex;
/*    flex-direction: column;*/
    align-items: flex-end;
    justify-content: flex-end;
    width: 58%;
}
.property-top-button{
    display: flex;
    align-items: flex-end;
}
.property-top-button .button{
    margin-left: var(--mid-pad); 
    min-width: initial;
}

.property-select-view .form-select-box .selectric{
    border: 1px solid var(--dark-border-color);
    min-width: 160px;
}
.property-select-view .form-select-box .selectric-items{
    border: 1px solid var(--dark-border-color);
    border-top: none;
}
.property-select-view .form-select-box .selectric .label{
    font-weight: 600;
}
.property-title-responsive,
.property-mob-button{
    display: none;
}
#property-image-slider .swiper-wrapper{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(3, 1fr);
    grid-column-gap: 4px;
    grid-row-gap: 4px;
}
.prop-img-link{
    display: flex;
    width: 100%;
    height: 100%;
    background: var(--bg-color);
}
#property-image-slider .swiper-wrapper .swiper-slide img{
    width: 100%;
    height: inherit;
    object-fit: cover;
    object-position: center center;
    aspect-ratio: 2 / 1;
}
#property-image-slider .swiper-wrapper .swiper-slide{
    display: none;
    height: inherit;
    margin: 0;
}

#property-image-slider .swiper-wrapper .swiper-slide:nth-child(1),
#property-image-slider .swiper-wrapper .swiper-slide:nth-child(2),
#property-image-slider .swiper-wrapper .swiper-slide:nth-child(3),
#property-image-slider .swiper-wrapper .swiper-slide:nth-child(4){
    display: flex;
/*    float: left;*/
}
#property-image-slider .swiper-wrapper .swiper-slide:nth-child(1){
/*    width: 70%;*/
    grid-area: 1 / 1 / 4 / 4;
}
#property-image-slider .swiper-wrapper .swiper-slide:nth-child(2){
/*    width: 30%;*/
    grid-area: 1 / 4 / 2 / 5;
}
#property-image-slider .swiper-wrapper .swiper-slide:nth-child(3){
/*    width: 30%;*/
    grid-area: 2 / 4 / 3 / 5; 
}
#property-image-slider .swiper-wrapper .swiper-slide:nth-child(4){
/*    width: 30%;*/
    grid-area: 3 / 4 / 4 / 5; 
}
#property-image-slider .resize-images-btn{
    display: none;
}

.view-all-images-btn{
	position: absolute;
	display: inline-flex;
    left: var(--mid-pad);
    bottom: var(--mid-pad);
	justify-content: center;
	align-items: center;
	text-align: center;
    padding: 0 var(--mid-pad);
	height: var(--med-pad);
	line-height: var(--med-pad);
	font-size: var(--icon-font);
	color: var(--text-color);
    background: var(--white-color);
	box-shadow: none;
	outline: none;
	border: none;
	transition: all 0.2s ease;
    z-index: 3;
    cursor: pointer;
    pointer-events: none;
}
.view-all-images-btn span{
    font-size: 12px;
    font-size: 500;
    padding-left:var(--xs-pad) 
}
#property-icons{
    margin-bottom:var(--lg-pad); 
}
#property-icons .icon-blocks{
    padding: 0 var(--xxl-pad);
}
#property-details{
    padding: var(--lg-pad) 0px var(--xxl-pad) 0px;    
    padding: 0 0px var(--xxl-pad) 0px;    
}
#property-details .content-banner{
    padding: 0 var(--xxl-pad);
    padding-top:var(--lg-pad); 
}

#property-details .content-banner{
    
}

.property-page #location-banner .content-banner{
    padding: 0 var(--main-pad);
    
}
#property-details-last .banner-content-inline-buttons{
    margin-top: 24px;
}
/*
.property-overview-content {
    margin-bottom: var(--lg-pad);
}
*/

.property-page #location-banner .blk-bg-light{
    padding: 112px 96px;
}
.property-page #location-banner .content-info-list-text{
    font-weight: 700;
    width: 50%;
    justify-content: flex-end;
}
.property-page #location-banner .content-info-list-text > span{
    padding-right: 0;
}

.property-page #location-banner .blk-bg-dark{
    padding: 112px var(--xxl-pad) var(--xxl-pad) var(--xxl-pad);
}
.property-mobile-button{
    display: none;
}

#floorplan-images{
    
}
#payment-images .swiper-img-link, 
#floorplan-images .swiper-img-link {
    border: 1px solid var(--border-color);
}

/*
#property-facilities .content-image-blocks{
    margin-top: var(--main-pad);  
}
*/
#property-facilities .content-img-block-wrap {
	width: 33.3333%;
}

.map-property-block{
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 2 / 1;
    background: var(--bg-color);
}
#map-property{
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}

/* MAP PAGE *****************************/
.map-page #header {
    z-index: 100;
    pointer-events: none;    
}
.map-page #header .header-main{
}

.map-page #header .nav-toggle,
.map-page #header .nav-wrap{
    pointer-events: auto;
}
.map-page .header-center,
.map-page .header-right {
    display: none;
}
.main-map-wrapper {
    display: flex;
    flex-direction: row;
}
.main-map-menu-wrap {
    position: relative;
}
.main-map-menu {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    background: var(--white-color);
}
.main-map-menu::-webkit-scrollbar {
	width: 4px;
	cursor: pointer;
}
.main-map-menu::-webkit-scrollbar-track {
	background: rgba(0, 0, 0, 0.08);
	cursor: pointer;
}
.main-map-menu::-webkit-scrollbar-thumb {
	background: var(--sub-color);
	cursor: pointer;
	transition: background 300ms ease;
}
.main-map-menu::-webkit-scrollbar-thumb:hover {
	background: rgba(0, 0, 0, 0.32);
	cursor: pointer;
}
#map-main-menu #main-filters {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 364px;
    height: 100dvh;
    left: 0;
    flex-grow: 1;
    z-index: 99;
}
#map-main-menu .main-filter-wrapper {
    padding-top: var(--main-pad);
}
#map-main-menu .main-filter-title {
    display: none;
}
#map-main-menu .main-filter-blocks{
    padding-bottom: var(--lg-pad);
}
.main-filter-views {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: var(--main-pad);
}
.filter-view {
    box-sizing: border-box;
    position: relative;
    display: inline-flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    color: var(--text-color);
    line-height: var(--main-pad);
    height: 40px;
    font-size: var(--button-font);
    font-weight: 600;
    padding: var(--xs-pad) var(--main-pad) var(--xs-pad) 20px;
    box-shadow: none;
    outline: none;
    border-radius: 0;
    background: transparent;
    border: none;
    /* border-bottom: 1px solid var(--text-color); */
    z-index: 1;
    opacity: .32;
    transition: all 0.2s ease;
}
.filter-view::before {
    position: absolute;
    content: '';
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: var(--text-color);
}
.filter-view:hover,
.filter-view.active {
    opacity: 1;
}
.filter-view:hover::before,
.filter-view.active::before {
    height: 2px;
}
.filter-view i {
    position: relative;
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    width: var(--main-pad);
    height: var(--main-pad);
    line-height: var(--main-pad);
    font-size: var(--icon-font);
}
.filter-view span {
    display: inline-flex;
    line-height: var(--main-pad);
    padding: 0 0 0 var(--xs-pad);
    font-weight: 600;
}
.main-filter-info {
    padding: 0 var(--lg-pad) 0 var(--lg-pad);
}
.main-filter-info .form-select-box {
    margin-bottom: var(--med-pad);
}
.main-filter-chips {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: var(--xs-pad);
    margin-bottom: var(--lg-pad);
    animation: opac-in-animate 0.4s ease-in forwards;
}
.main-filter-chip {
    display: flex;
    flex-direction: row;
    background: var(--bg-color);
    padding-right: var(--xxs-pad);
}
.main-filter-chip.active {
    background: var(--sub-color);
    color: var(--white-color);
}
.main-filter-chip span {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--sm-font);
    padding: var(--xxs-pad) 0 5px var(--sm-pad); /* Instead of 4px padding bottom we add 1 px more to make the alignment perfect. */
    font-weight: 700;
    line-height: 1;
}
.main-filter-chip div {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    font-size: 12px;
    font-weight: 300;
    cursor: pointer;
}

#map-main-menu .accordion-item:first-of-type {
    border-top: none;
}
#map-main-menu .filter-checkboxes {
    max-height: 280px;
    overflow-y: auto;
}
#map-main-menu .filter-checkboxes::-webkit-scrollbar {
	width: 4px;
	cursor: pointer;
}
#map-main-menu .filter-checkboxes::-webkit-scrollbar-track {
	background: rgba(0, 0, 0, 0.08);
	cursor: pointer;
}
#map-main-menu .filter-checkboxes::-webkit-scrollbar-thumb {
	background: var(--sub-color);
	cursor: pointer;
	transition: background 300ms ease;
}
#map-main-menu .filter-checkboxes::-webkit-scrollbar-thumb:hover {
	background: rgba(0, 0, 0, 0.32);
	cursor: pointer;
}
#map-main-menu .filter-checkboxes .ch-btn {
    padding-right: var(--mid-pad);
}
.main-map-body {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
}
.main-map-map {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
}
#map-canvas {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}
.map-canvas .gm-style .gm-style-iw-c{
    max-width: initial !important;
    max-height: initial !important;
    width: 592px;
    padding: 0px;
    border-radius: 0;
    top: 0;
    box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.24); 
}
.map-canvas .gm-style-iw-chr {
    display: none;
}
.map-canvas .gm-style .gm-style-iw-d {
    max-width: initial !important;
    overflow: hidden !important;
    width: 100%;
}
.gm-style-cc {
    display: none;
}
.house-marker-info {
    display: flex;
    flex-direction: row;
    font-family: var(--font-family);
    /* opacity: 0;
    animation: fadeIn 0.3s ease-in forwards; */
}

/* keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}@ */


.house-marker-image {
    position: relative;
    display: flex;
    width: 224px;
    max-height: 240px;
    background: var(--sub-color);
    opacity: 0;
    animation: opac-in-animate 0.4s ease-in forwards;
}
.house-marker-image img {
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: auto;
    overflow-clip-margin: content-box;
    overflow: clip
}
.house-marker-image .listing-date {
    position: absolute;
    padding: var(--mid-pad);
    width: auto;
    font-size: var(--sm-font);
}
.house-marker-image .listing-date span {
    padding: var(--xxs-pad) var(--sm-pad);
    height: var(--main-pad);
    align-items: center;
    justify-content: center;
    color: var(--white-color);
}
.house-marker-details {
    display: flex;
    flex-direction: column;
    padding: var(--mid-pad);
    width: calc(100% - 224px);
    color: var(--text-color); 
    opacity: 0;
    animation: opac-in-animate 0.4s ease-in forwards;
}
.house-marker-top {
    display: flex;
    flex-direction: row;
    border-bottom: 1px solid var(--border-color);
}
.house-marker-top-col {
    display: flex;
    flex-direction: column;
    padding-bottom: var(--mid-pad);
}
.house-marker-top-col:first-child {
    flex: 1;
    padding-right: var(--main-pad);
}
.house-marker-dev {
    font-size: var(--sm-font);
    font-weight: 400;
    line-height: 16px;
}
.house-marker-title {
    font-size: var(--main-font);
    font-weight: 500;
    letter-spacing: 0.56px;
    line-height: 1.2;
}
.house-marker-interested {
    margin-top: auto;
    color: var(--sub-color);
    font-weight: 700;
    font-size: var(--main-font);
    transition: all 0.2s ease;
}
.house-marker-interested:hover {
    color: var(--text-color);
    transition: all 0.4s ease-out;
}
.house-marker-items {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: var(--xs-pad);
    padding: var(--mid-pad) 0;
    border-bottom: 1px solid var(--border-color);
}
.house-marker-item {
    display: flex;
    flex-direction: column;
    width: calc(33.3333% - 6px);
}
.house-marker-item div {
    position: relative;
    display: -webkit-box;
	overflow: hidden;
	text-overflow: ellipsis;	
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-clamp: 3;
    line-height: 16px;
    font-size: var(--sm-font);
    font-weight: 500;
    text-transform: uppercase;
}
.house-marker-item span {
    line-height: 16px;
    font-size: 10px;
    font-weight: 400;
    color: var(--sub-color);
    text-transform: uppercase;
}
.house-marker-footer {
    display: flex;
    justify-content: space-between;
/*
    flex-direction: column;
    gap: var(--xxs-pad);
*/
    padding-top: var(--mid-pad);
    margin-top: auto;
}
.house-marker-prices {
    display: flex;
/*
    flex-direction: column;
    gap: var(--xxs-pad);
    padding-top: var(--mid-pad);
    margin-top: auto;
*/
}
.house-marker-prices span {
    color: var(--sub-color);
    font-weight: 700;
    line-height: 24px;
}
.map-canvas .gm-style-iw-tc {
/*    display: none;*/
    top: -2px;
}
.map-search {
    position: absolute;
    display: flex;
    flex-direction: column;
    z-index: 2;
    width: 100%;
    max-width: 360px;
    top: var(--lg-pad);
    left: var(--lg-pad);
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease-in-out;
}
.map-search.show {
    opacity: 1;
    pointer-events: auto;
    transition: opacity 0.3s ease-out;
}
.map-search .filter-block {
    background: linear-gradient(172deg, #FFF 0%, rgba(255, 255, 255, 0.8) 100%);
    backdrop-filter: blur(8px);
    /* padding: var(--main-pad); */
    border: 0px;
    box-shadow: 8px 0 16px 0 rgba(0, 0, 0, 0.04);
}
.map-search .filter-block.loading {
    pointer-events: none;
    user-select: none;
    opacity: 0.64;
}
.map-search .filter-block-content {
    padding: 0;
}
.map-search .filter-title {
    padding: var(--main-pad);
}
.map-search .filter-title:hover {
    color: var(--text-color);
}
.map-search .filter-title h5 {
    font-size: 18px;
    color: var(--text-color);
}
.map-search .filter-title h5 span {
    color: var(--sub-color);
}
.map-search .filter-title.accordion-button:after {
    top: var(--main-pad);
    right: var(--main-pad);
    content: "\f078";
    color: var(--text-color);
}
.map-search .filter-block.loading .filter-title.accordion-button:after {
    content: "\f3f4";
    animation: spin 0.5s linear infinite;
}
.house-filters {
    display: none;
}
.map-search-bar {
    position: relative;
    display: flex;
    margin: 0 var(--main-pad);
}
.map-search-bar .form-control {
    padding-right: var(--lg-pad);
}
.map-search-bar .map-search-btn {
    position: absolute;
    right: 0;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--lg-pad);
    height: var(--lg-pad);
    font-size: var(--main-font);
    color: var(--text-color);
    background: transparent;
    border: none;
}
.map-search-bar .map-search-btn.has-hover {
    opacity: 1;
    transition: opacity 0.2s ease;
}
.map-search-bar .map-search-btn.has-hover:hover {
    opacity: .48;
    transition: opacity 0.3s ease;
}

.listings-header .map-search-bar{
    display: flex;
    margin: 0 0 0 auto;
    width: 300px;
}
.listings-header .map-search-bar .form-control{
    background: var(--bg-color);
}

.map-search-blk {
    position: relative;
    display: flex;
    flex-direction: column;
}
.property-list-wrapper{
    position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    overflow-y: auto;
    margin-right: -48px;
    padding-right: 40px;
    gap: var(--main-pad);
    row-gap: var(--lg-pad);
}
.property-list-wrapper::-webkit-scrollbar {
	width: 4px;
	cursor: pointer;
}
.property-list-wrapper::-webkit-scrollbar-track {
	background: rgba(0, 0, 0, 0.08);
	cursor: pointer;
}
.property-list-wrapper::-webkit-scrollbar-thumb {
	background: var(--sub-color);
	cursor: pointer;
	transition: background 300ms ease;
}
.property-list-wrapper::-webkit-scrollbar-thumb:hover {
	background: rgba(0, 0, 0, 0.32);
	cursor: pointer;
}

.map-search-blk .spinner-border {
    display: none;
}
.property-list-wrapper.loading, 
.map-search-blk.loading {
    height: 640px;
    height: calc(100dvh - 216px);
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.map-search-blk.loading .spinner-border {
    display: block;
}
.property-list-wrapper .property-list-loader{
    display: none;
    opacity: 0;
}
.property-list-wrapper .property-list-loader .spinner-border{
    opacity: 0.64;
}
.property-list-wrapper.loading .property-list-loader{
    position: sticky;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background: var(--white-color);
    opacity: 1;
/*    animation: opac-in-animate 0.1s ease-in forwards;    */
}
.map-search-blk-list {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    margin: 0 var(--main-pad);
    margin-right: var(--xxs-pad);
    padding-right: var(--mid-pad);
    margin-left: var(--main-pad);
    mask-image: linear-gradient(to bottom, transparent 0, white 48px, white calc(100% - 80px), transparent 100%);
}
.map-search-blk-list.clusterize-scroll {
    max-height: 640px;    
    max-height: calc(100dvh - 216px);
}
.map-search-blk-list::-webkit-scrollbar {
	width: 4px;
	cursor: pointer;
}
.map-search-blk-list::-webkit-scrollbar-track {
	background: rgba(0, 0, 0, 0.08);
	cursor: pointer;
}
.map-search-blk-list::-webkit-scrollbar-thumb {
	background: var(--sub-color);
	cursor: pointer;
	transition: background 300ms ease;
}
.map-search-blk-list::-webkit-scrollbar-thumb:hover {
	background: rgba(0, 0, 0, 0.32);
	cursor: pointer;
}
.map-search-blk-list.clusterize-scroll .empty-message {
    padding: var(--main-pad);
    text-align: center;
}
.house-blk-inline {
    display: flex;
    flex-direction: row;
    padding: var(--main-pad) 0px;
    border-bottom: 1px solid var(--border-color);
    opacity: 1;
    transition: opacity 0.2s ease;
    cursor: pointer;
}
.house-blk-inline:hover {
    opacity: .48;
    transition: opacity 0.3s ease;
}
.house-inline-img {
    position: relative;
    display: inline-block;
    margin: auto var(--sm-pad) auto 0;
    width: 120px;
    height: 80px;
    background: var(--sub-color);
    overflow: hidden;
}
.house-inline-img img {
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 100%;
    overflow: visible;
}
.house-inline-content {
    position: relative;
    font-size: 14px;
    line-height: 1.3;
    width: calc(100% - 132px);
}
.house-inline-txt {
    display: flex;
    flex-direction: column;
    height: 100%;
}
.house-inline-dev {
    font-size: var(--sm-font);
    font-weight: 400;
    line-height: 16px; 
    overflow: hidden;
	text-overflow: ellipsis;
    white-space: nowrap;
    text-transform: none;
}
.house-inline-title {
    font-size: var(--main-font);
    margin-bottom: var(--mid-pad); 
    letter-spacing: 0.56px;
    font-weight: 700;
    display: -webkit-box;
	overflow: hidden;
	text-overflow: ellipsis;	
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
    margin-bottom: var(--xs-pad);
    line-height: 1.2;
}
.house-inline-items {
    display: flex;
    flex-direction: column;
    margin-bottom: var(--xs-pad);
}
.house-inline-item {
    display: flex;
    flex-direction: row;
    align-items: center;
}
.house-inline-item div {
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(177, 153, 127, 0.16);
    color: var(--sub-color);
    font-size: 10px;
    width: 16px;
    height: 16px;
    margin-right: var(--xs-pad);
    padding-top: 2px;
}
.house-inline-item span {
    font-size: var(--sm-font);
}
.house-inline-prices {
    display: flex;
    flex-direction: column;
    margin-top: auto;
    gap: var(--xxs-pad);
}
.house-inline-prices span {
    color: var(--sub-color);
    font-weight: 700;
    line-height: 18px;
}
.main-house-list {
    position: absolute;
    top: 0;
    right: 0;
    background: var(--white-color);
    width: 100%;
    height: 100%;
    padding: var(--lg-pad);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease-in-out;
    overflow: hidden;
}
.main-house-list.show {
    opacity: 1;
    pointer-events: auto;
    transition: opacity 0.3s ease-out;
}
.main-house-list .listings-page {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
}
/* .property-cards.clusterize-scroll {
    display: flex;
    flex-direction: column;
    max-height: inherit;
    overflow: auto;
}
.property-cards.clusterize-scroll .clusterize-content {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: var(--mid-pad);
    row-gap: var(--lg-pad);
} */
.property-cards {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: var(--main-pad);
    row-gap: var(--lg-pad);
}
.property-cards.clusterize-scroll {
    max-height: 644px;
}
.property-card {
    position: relative;
    display: flex;
    flex-direction: column;
    width: calc(20% - 20px);
    height: max-content;
    opacity: 0;
    animation: fadeInCard 0.3s ease forwards;
}

@keyframes fadeInCard {
    from {
        opacity: 0;
        transform: translateY(12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.property-card-image {
    position: relative;
    aspect-ratio: 272 / 142;
    width: 100%;
    height: 100%;
}
.property-card-image img {
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 100%;
}
.property-card-image .listing-date {
    position: absolute;
    top: 0;
    left: 0;
    padding: var(--mid-pad);
    width: auto;
    font-size: var(--sm-font);
}
.property-card-image .listing-date span {
    padding: var(--xxs-pad) var(--sm-pad);
    height: var(--main-pad);
    align-items: center;
    justify-content: center;
    color: var(--white-color);
}
.property-card-details {
    padding-top: var(--mid-pad);
}
.property-card-content {
    display: flex;
    flex-direction: column;
    color: var(--text-color);
}
.property-card-dev {
    font-size: var(--sm-font);
    font-weight: 400;
    line-height: 16px;
}
.property-card-title {
    font-size: var(--main-font);
    font-weight: 500;
    color: var(--text-color);
    margin-bottom: var(--xs-pad);
}
.property-card-items {
    display: flex;
    flex-direction: column;
    margin-bottom: var(--mid-pad);
}
.property-card-item {
    display: flex;
    flex-direction: row;
    align-items: center;
}
.property-card-item div {
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(177, 153, 127, 0.16);
    color: var(--sub-color);
    font-size: 12px;
    width: 24px;
    height: 24px;
    margin-right: var(--xs-pad);
    padding-top: 2px;
}
.property-card-item span {
    font-size: var(--main-font);
}
.property-card-footer {
    display: flex;
    flex-direction: row;
}
.property-card-footer span {
    color: var(--sub-color);
    font-weight: 700;
    line-height: 1;
}
.map-list-btn-mob,
.map-view-btn-mob {
    display: none;
}

/* CONTENT ELEMENT STYLES *****************************/


.content-text-blocks{
    position: relative;
    display: flex;
    width: 100%;
    column-gap: var(--xxs-pad); 
}

.content-text-blk-wrap{
    position: relative;
    display: flex;
    flex-direction: column;
    width: 25%;
}
.content-text-blocks-2 .content-text-blk-wrap {
    width: 50%;
}
.content-text-blocks-3 .content-text-blk-wrap {
    width: 33.3333%;
}
.content-text-blk {
    display: flex;
    flex-direction: column;
/*    flex-grow: 1;*/
    background: rgba(var(--main-color-rgb), 0.04);
    padding: var(--main-pad); 
}
.text-blk-title div{
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.2;
    margin-bottom: var(--xs-pad);
}
.text-blk-text p{
    margin: 0;
}

.content-text-dark-blk {
    justify-content: flex-end;
    margin-top: -48px;
    background: var(--main-color);
    color: var(--white-color);
}
.content-text-dark-blk .text-blk-title{
    color: var(--sub-color);
}
.dark-banner-block .content-text-dark-blk {
    background: var(--sub-color);
    color: var(--white-color);    
}
.dark-banner-block .content-text-blk {
    background: rgba(242, 242, 242, 0.1);
}
.dark-banner-block .content-text-dark-blk .content-text-blk {
    background: transparent;
}

.icon-blocks{
	position: relative;
	display: flex; 
    column-gap: var(--xxs-pad); 
}
.content-banner + .icon-blocks{
    margin-top: var(--xxl-pad); 
}

.icon-blocks-column{
	position: relative;
	display: flex; 
    flex-direction: column;
    width: 60%;
}
.icon-blocks-row{
	position: relative;
	display: flex; 
    flex-direction: row;
    flex-wrap: wrap;
    gap: var(--xxs-pad);
}
.icon-blocks-cols{
	position: relative;
	display: flex; 
    flex-direction: row;
}
.icon-blocks-col{
	position: relative;
	display: flex; 
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-end;
}
#home-banner-1{
    padding-bottom: 0;
}
#home-banner-1 .container{
    padding-right: 0px;
}
#home-banner-1 .content-banner{
    margin-right: 0px;
}
#home-banner-1 .icon-blocks-cols{
    width: 75%;
    margin-left: -25%;
    margin-top: 96px;
    margin-top: 72px;
}

.icon-blocks-cols .icon-blocks-col {
    width: 33.3333%;
    padding: 0 4px;
}
.icon-blocks-col .icon-block-inline{
    width: 100%;
    margin-bottom: 8px;
}
.icon-block-full{
    
}

.icon-block {
	position: relative;
	display: flex;
    flex-direction: column;
}
.icon-blocks .icon-block {
    width: 33.3333%;
    width: calc(33.3333% - 8px);
}

.icon-blocks.ib4 .icon-block {
    width: calc(25% - 8px);
}

.icon-block-inline {
	position: relative;
	display: flex;
    padding: var(--med-pad); 
    background: rgba(var(--sub-color-rgb), 0.06);
/*    margin-bottom: var(--xxs-pad);  */
}
.icon-block-inline-sm {
	position: relative;
	display: flex;
    padding: var(--mid-pad); 
    background: rgba(var(--sub-color-rgb), 0.06);
}
.dark-icon-block.icon-block-inline {
    background: var(--sub-color);
    color: var(--white-color);
}
.icon-block-wrap{
	position: relative;
	display: flex;
    flex-direction: column;    
    padding: var(--main-pad);
    background: var(--bg-color);
    background: rgba(var(--sub-color-rgb), 0.16);
    height: 100%;
    transition: all 0.2s ease-in-out;
}
.icon-block-wrap.show-popover-btn{
	cursor: pointer;  
}

.icon-block-wrap.show-popover-btn:hover{
    background: var(--main-color);
    transition: all 0.4s ease-in-out;
}


.icon-block-icon{
    position: relative;
	display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    align-items: center;
    width: var(--lg-pad);
    height: var(--lg-pad);
    color: var(--sub-color);
    background: rgba(var(--sub-color-rgb), 0.16);
    font-size: 24px;	
}
.icon-block-inline-sm .icon-block-icon{
    width: 40px;
    height: 40px;
    font-size: 20px;
}
.dark-icon-block.icon-block-inline .icon-block-icon{
    color: var(--white-color);
    background: var(--white-alpha-color);
}
.icon-block-content{
    position: relative;
	display: flex;
    flex-direction: column;
    margin-top:var(--main-pad); 
}
.icon-block-inline .icon-block-content{
    margin: 0;
    padding-left: var(--mid-pad); 
    width: calc(100% - var(--lg-pad));
}
.icon-block-inline-sm .icon-block-content{
    margin: 0;
    justify-content: center;
    padding-left: var(--mid-pad); 
    width: calc(100% - var(--lg-pad));
}
.icon-block-title{
    position: relative;
    display: block;
}
.icon-block-title div,
.icon-block-title h4{
    font-weight: 600;
    color: var(--text-color);
    transition: all 0.2s ease-in-out;
}
.icon-block-wrap.show-popover-btn:hover .icon-block-title div,
.icon-block-wrap.show-popover-btn:hover .icon-block-title h4{
    color: var(--sub-color);
    transition: all 0.4s ease-in-out;
}

.icon-block-inline .icon-block-title div,
.icon-block-inline .icon-block-title h4{
    line-height: var(--lg-pad);
    margin: 0;
}
.icon-block-inline-sm .icon-block-title div,
.icon-block-inline-sm .icon-block-title h4{
    line-height: 20px;
    margin: 0;
}
.dark-icon-block.icon-block-inline .icon-block-title div,
.dark-icon-block.icon-block-inline .icon-block-title h4{
    color: var(--white-color);
}
.icon-block-inline .icon-block-title div,
.icon-block-inline .icon-block-title h4{
    display: block;
    width: 100%;
    overflow: hidden;
	text-overflow: ellipsis;
    white-space: nowrap;
    text-transform: none;
    font-size: 14px;
}
.icon-block-text{
    position: relative;
    display: flex;
    flex-direction: column;
    color: var(--light-text-color);
    font-size: 14px;
	display: -webkit-box;
	overflow: hidden;
	text-overflow: ellipsis;	
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
}
.icon-block-text p{
	margin: 0;
}
.icon-block-content .txt-btn{
    align-self: flex-start;
    margin-top:  var(--main-pad);
}
.icon-block-inline-text{
    font-size: 12px;
    line-height: 16px;
    text-transform: uppercase;
    margin: 0;
}

.icon-block-wrap:hover .txt-btn span{
    color: var(--sub-color);
	opacity: 1;
	transition: opacity 0.4s ease-in;
    transition-delay: 0.1s;
}
.icon-block-wrap:hover .txt-btn div {
	color: var(--sub-color);
    left: calc(100% - var(--main-pad));
    transition: left 0.4s ease-out;
}

.icon-blocks-row .dark-icon-block .icon-block-wrap {
    background: var(--main-color);
    color: var(--sub-color);
}
.icon-blocks-row .dark-icon-block .icon-block-title h4{
    color: var(--sub-color);
}

.content-image-blocks {
	position: relative;
	display: flex;
    flex-wrap: wrap;
}
.content-img-block-wrap {
	position: relative;
	display: flex;
	width: 25%;
	padding: 0 2px;    
    margin-bottom: var(--main-pad);
}

.content-img-block {
	position: relative;
	display: flex;
    flex-direction: column;
    width: 100%;
    overflow: hidden;
}
.content-img-block-img{
	position: relative;
	display: flex;
    flex-direction: column;
    margin-bottom: var(--mid-pad);
}
.content-img-block-img img{
	width: 100%;
	height: auto;
}
.content-img-block-title {
	position: relative;
	display: flex;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
}

#property-facilities .content-img-block-img{
    aspect-ratio: 16/9;
    overflow: hidden;
}
#property-facilities .content-img-block-img img{    
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 100%;
}

.info-blocks{
	position: relative;
	display: flex;    
}

.info-block-list{
	position: relative;
	display: flex;
	flex-direction: column;	
    padding:0 0 0 var(--lg-pad);
    width: 36%;
    border-left: 1px solid var(--border-color);
}
.info-blocks .info-block-list:first-child{
    padding-left: 0;
    border-left: 0px;
    width: 28%;
}
.info-block-content{
	position: relative;
	display: flex;
    flex-direction: column;	
}
.info-block-title{
	position: relative;
	display: flex; 
}
.info-block-title{
	position: relative;
	display: flex;
    margin: 0;
    text-transform: uppercase;
    margin-bottom: var(--xs-pad);
}
.info-block-text{
	position: relative;
	display: flex;
    flex-direction: column;	
    color: var(--light-text-color);
    line-height: 2.0;
}
.info-block-text span{
}
.info-block-text a{
    color: var(--light-text-color);
}

/* OTHER CONTENT STYLES *****************************/

#icons-banner {
    padding: var(--xxl-pad) 0 0 0;    
}
#icons-banner-single,
#icons-banner-inline{
    padding: var(--max-pad) 0;    
}
#icons-banner-small{
    padding: var(--max-pad) 0 calc(var(--max-pad) - var(--main-pad)) 0;    
}
#icons-banner-small .banner-blk-txt{
    margin-bottom: var(--lg-pad);
    padding-left:var(--xl-pad); 
}
#icons-banner .banner-blk-txt{
    padding: 0 var(--xl-pad);
    margin-bottom: var(--lg-pad);
}
#icons-banner .text-block-wrap,
#icons-banner .icon-block-wrap{
    margin-bottom: var(--main-pad);
}



/* ARTICLE STYLES *****************************/

.article-page #content-wrapper{
	padding-top: 152px;
/*    overflow: hidden;*/
}
.article-page #content-main{
    padding: 0;
	margin: 0 auto var(--max-pad) auto;
}

.article-page .content-main{
/*
    width: 60%;
    width: calc(100% - 528px);
    padding: 0 var(--lg-pad) 0 0;
*/
}
/*
.article-page .content-right{
    width: 40%;
    width: 528px;
	padding: 80px 0 0 var(--lg-pad);
}
*/
.article-top-wrap{
	position: relative;
	display: flex; 
    flex-direction: column;
    width: 100%;
}
.article-image-main{
	position: relative;
	display: flex;
	flex-direction: column;
/*    border-radius: var(--main-radius);*/
	margin-bottom: var(--main-pad);	
}
.article-image-main .article-image-item{
	position: relative;
	display: block;
    height: 320px;    
    overflow: hidden;
}
.article-image-main .article-image-item img{
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 100%;
}

#article-video{
	position: relative;
	display: block;
	margin-bottom: var(--main-pad);
	padding: 0px;
	text-align: center;
	max-height: 52vh;
}
#video-main{
	position: relative;
	width: 100%;
	max-width: 100%;
/*	margin: auto;*/
/*	height: 400px;*/
	vertical-align: top;
	z-index: 1;
}
#article-video .op-controls .op-controls-time{
	line-height: 1.6;
}

#article-video .op-controls .op-controls__progress--played, 
#article-video .op-controls .op-controls__volume--display{
	color: var(--sub-color);
}
#article-video .op-player__play:hover {
    border-color: transparent transparent transparent var(--sub-color);
}
#article-video .op-player__loader{
	border-top-color:var(--sub-color);
}

.youtube-video {
    position: relative;
    display: block;
    padding-bottom: 56.25%;
    height: 0;
}
.youtube-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.article-image-main img,
.news-img img {
	max-width: 100%;
	height: auto;
	image-rendering: -webkit-optimize-contrast;
}

.article-main{
	position: relative;
	display: flex;
    flex-direction: column;
    padding: 0 148px;
    margin-bottom: var(--main-pad);
}

.article-info{
	position: relative;
	display: flex;
    flex-direction: row;
	margin-bottom: var(--main-pad);
}
.article-date {
    position: relative;
    display: flex;
    flex-direction: row;
    padding:var(--sm-pad) 0;
	line-height: var(--main-pad); 
}
.article-date i{
   	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	font-size: var(--sm-font);
	color: var(--sub-color);
	width: var(--main-pad);
	height: var(--main-pad); 
}
.article-date span{
    font-size: var(--sm-font);
    padding-left:var(--xxs-pad); 
}
.article-share-bar{
	position: relative;
	display: flex;
	flex-direction: row;
	align-items: flex-end;
    margin-left: auto;
}
.article-share {
	position: relative;
	display: flex;
	flex-direction: row;
	list-style: none;
	padding: 0;
	margin: 0;
}
.article-share li {
	position: relative;
	padding: 0;
	margin: 0 0 0 var(--mid-pad);
    margin: 0;
}
.article-share a {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	font-size: var(--main-font);
	color: var(--sub-color);
	width: var(--lg-pad);
	height: var(--lg-pad);
	border-radius: 50%;
	padding: 0;
	margin: 0;
	border: none;
}
.article-share a:hover {
	color: var(--text-color);
}
.article-share-mob {
	display: none;
}
.article-share-btn{
	position: relative;
	display: flex;
	padding: 0;
	margin: 0;
	border: none;
    color: var(--sub-color);
    background: none;
}
.article-share-btn span{
    font-weight: 600;
    line-height: var(--main-pad);
    padding-right: 8px;
}
.article-share-btn i {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	font-size: var(--main-font);
	color: var(--sub-color);
	width: var(--main-pad);
	height: var(--main-pad);
}
.article-share-btn:hover{
    
}
.article-title{
	margin-bottom: var(--main-pad);
}
.article-title h1,
.cat-header h1{
	font-size: 32px;
    color: var(--text-color);
}
.article-title h1,
.article-intro p{
	margin: 0;
}

.article-intro{
	position: relative;
	display: flex;
	flex-direction: column;
	margin-bottom: var(--main-pad);	
/*    color: var(--light-text-color);*/
}
.article-content{
	position: relative;
	display: flex;
	flex-direction: column;
}

.news-module{
	position: relative;
	display: flex;
	flex-direction: column;	
}
.news-module-title{
	margin-bottom: var(--mid-pad);
    animation: opac-in-animate 0.4s ease-in forwards;
    opacity: 0;
	
}
.news-module-title h3{
	position: relative;
    font-size: 20px;
	color: var(--sub-color); 
	line-height: var(--main-pad); 
	margin: 0;
}
.news-item-list{
	position: relative;
	display: flex;
	flex-direction: column;
	margin-bottom: var(--main-pad);
}
.news-item-line{
	position: relative;
	display: flex;
    flex-direction: column;	
/*    border-bottom: 1px solid var(--border-color);  */
    opacity: 0;
    animation: opac-in-animate 0.4s ease-in forwards;
    animation: right-in-animate 0.8s ease-in-out forwards;
}
.news-item-line:nth-child(1){
    animation-delay: 0.2s;
}
.news-item-line:nth-child(2){
    animation-delay: 0.4s;
}
.news-item-line:nth-child(3){
    animation-delay: 0.6s;
}
.news-item-line:nth-child(4){
    animation-delay: 0.8s;
}
.news-item-line:nth-child(5){
    animation-delay: 1.0s;
}
.news-item-line > a{
	position: relative;
	display: flex;
    flex-direction: row;
    padding: 16px 16px;
    background: var(--white-color); 
/*
    animation: right-in-animate 0.8s ease-in-out forwards;
    opacity: 0;
*/
    transition: all 0.2s ease;
}
.news-item-line > a:hover{
    color: var(--sub-color);
    background: var(--bg-color); 
    background: rgba(var(--sub-color-rgb), 0.16);
    transition: all 0.4s ease-in;
}
.news-item-line-image{
  	position: relative;
	display: flex;
	flex-direction: column;  
    overflow: hidden;
    height: 96px;
    width: 144px;
}
.news-item-line-image img{
    height: 100%;
    width: 100%;
    max-width: initial;
    object-fit: cover;
}
.news-item-line-text{
  	position: relative;
	display: flex;
	flex-direction: column; 
    width: calc(100% - 144px);
    padding-top: var(--xs-pad);
	padding-left: var(--main-pad);
}
.news-item-line-text .news-item-title{
	font-weight: 700;
    font-size: 16px;
	margin: 0;
    color: var(--text-color);
    white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.news-item-subtext{
  	position: relative;
	display: flex;
    font-size: 14px;
	display: -webkit-box;
	overflow: hidden;
	text-overflow: ellipsis;	
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
    color: var(--med-text-color);
}
.news-item-subtext p{
    margin: 0;
}

/*
.news-item-line-text .news-item-date{
	margin-top: auto;
    align-self: flex-start;
    line-height: var(--main-pad);
}
.news-item-line-text .news-item-date span{
    position: relative;
    display: flex;
    color: var(--light-text-color);
}
.news-item-line-text .news-item-date span:after{
    content: "\f017";
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    width: var(--main-pad);
    height: var(--main-pad);
    top: 0;
    right: -28px;
    font-size: 14px;
    font-family: "Font Awesome 6 Pro";
    font-weight: 300;
    color: var(--sub-color);
}
.news-item-line-text .txt-btn{
	margin-top: auto;
    align-self: flex-start;
}
.news-module-button{
	position: relative;
}
*/


/* NEWS ITEM STYLES *****************************/

.news-wrap {
	position: relative;
    overflow: hidden;
    padding-top:var(--lg-pad);
}

.news-wrap .banner-blk-txt{
 	position: relative;
	display: flex;
    flex-direction: column;
    text-align: center;
    width: 40%;
    margin: 0 auto var(--lg-pad) auto;
}
/*
.news-wrap .content-banner-center .content-banner-title:after {
    left: calc(50% - 23px);
}
*/
.news-wrap .banner-blk-button{
    right: var(--lg-pad);
}
.news-header {
	position: relative;
	display: block;
    text-align: center;
	margin-bottom: var(--mid-pad);
}
.news-header h2 {
	margin: 0;
	line-height: 24px;
}

.news-item-block {
	position: relative;
	display: flex;
	flex-direction: column;
    height: 100%;
}
.news-block-link{
	position: relative;
	display: flex;
	flex-direction: column;    
}
.news-img {
	position: relative;
	display: flex;
	flex-direction: column;
}
.news-img .news-img-blk {
	position: relative;
	display: flex;
    height: 192px;
	opacity: 1;
	transition: all 0.2s ease;
	overflow: hidden;
}

.news-img .news-img-blk img{
    width: 100%;
    max-width: initial;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
.news-block-link:hover .news-img-blk {
	opacity: 0.72;
	transition: opacity 0.4s ease-out;
}

.news-label{
	position: absolute;
	display: flex;    
    font-weight: 600;
    top: var(--mid-pad);
    right: var(--mid-pad);
    line-height: var(--med-pad); 
    padding: 0 var(--sm-pad);  
    background: var(--main-color);
    color: var(--white-color);
}

.news-item-content {
	position: relative;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	padding-top: var(--med-pad);
}

.news-item-title {
	display: -webkit-box;
	overflow: hidden;
	text-overflow: ellipsis;	
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	margin-bottom: var(--xs-pad);
}
.news-item-title h3 {
    font-size: 18px;
	margin: 0;
}

.news-item-text{
	position: relative;
	display: flex;
	flex-direction: column;   
    margin-bottom: var(--main-pad);
    color: var(--med-text-color);
}
.news-item-link{
	position: relative;
	display: flex;
	flex-direction: column; 
    align-items: flex-start;
    margin-top: auto;
}

.category-view .news-item-title {
    color: var(--text-color);
}

.category-view .txt-btn{
    color: var(--sub-color);
}
.category-view .txt-btn span{
	opacity: 1;
}
.category-view .txt-btn div {
	color: var(--sub-color);
    left: calc(100% - var(--main-pad));
}

/*
.news-block-link:hover .txt-btn span{
	opacity: 1;
	transition: opacity 0.4s ease-in;
    transition-delay: 0.1s;
}


.news-block-link:hover .txt-btn span{
	opacity: 1;
	transition: opacity 0.4s ease-in;
    transition-delay: 0.1s;
}
.news-block-link:hover .txt-btn div {
	color: var(--white-color);
    background: var(--sub-color);
    left: calc(100% - var(--main-pad));
    transition: left 0.4s ease-out;
}
*/


/* NEWS SLIDER STYLES *****************************/

.news-slider{
    margin: 0px -2px;
    /* overflow: initial; */
}

/*
.article-page #content-news-title,
#article-news-title{
    display: none;
}
*/
.article-page #article-news-title{
    display: flex;
}
.news-item.swiper-slide{
	padding: 0px 2px;  
    margin: 0px;
}
.news-slider .news-item-block{
	width: 100%;
    background: var(--grey-color);    
}
.news-slider-img {
	position: relative;
	display: flex;
	opacity: 1;
	transition: all 0.2s ease;
	overflow: hidden;
}

.news-slider-img img{
    width: 100%;
    max-width: initial;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    transition: all 0.2s ease;
}
.news-slider .news-item-content{
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    padding: 0;
}
.news-slider .news-item-content-block {
	position: relative;
	display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
    width: 100%;
    padding: var(--med-pad); 
    color: var(--white-color);   
    z-index: 1;
}
.news-slider .news-item-content-block:after{
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
    background: linear-gradient(204deg, rgba(14, 31, 59, 0.00) 9.83%, var(--dark-main-color) 97.55%);
    opacity: 0;
    z-index: -1;
    transition: all 0.2s ease;
}
.news-slider .news-item-block:hover .news-slider-img img{
    filter: grayscale(0%);
    transition: all 0.4s ease-out;
}
.news-slider .news-item-block:hover .news-item-content-block:after{
	opacity: 1;
	transition: all 0.4s ease-out;
}
/*
.news-slider .news-item-date{
    position: absolute;
    top: var(--med-pad); 
    left: var(--med-pad);
    line-height: var(--mid-pad);  
    padding: var(--xxs-pad) var(--sm-pad); 
    background: rgba(255,255,255,0.08);
    font-size: var(--sm-font);
}
*/
.news-slider .news-item-date{
    position: absolute;
    display: flex;
    top: var(--med-pad); 
    left: 72px;
    font-weight: 500;
    height: var(--med-pad);
    line-height: var(--main-pad);
    padding: var(--xxs-pad) var(--mid-pad);
    text-shadow: var(--chip-text-shadow);
    background: var(--chip-white-alpha-color);
    backdrop-filter: blur(4px);
}
.news-item-share-btn{
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 32px;
    height: 32px;
    line-height: 32px;
    top: var(--med-pad);
    left: var(--med-pad);
    font-size: var(--icon-font);
    color: var(--white-color);
    border: none;
    box-shadow: none;
    text-shadow: var(--chip-text-shadow);
    background: var(--chip-white-alpha-color);
    backdrop-filter: blur(2px);
    z-index: 2;
}
.category-view .news-item-block .news-item-share-btn{
    top: var(--mid-pad);
    left: var(--mid-pad);
}
.news-slider .news-item-title{
    margin-top: auto;
}
.news-slider .news-item-text{
    display: none;
    color: var(--white-color); 
    margin: 0;
}
.news-slider .news-item-text div{
    position: relative;
    opacity: 0;
    transition: opacity 0.2s ease;
}
.news-slider .news-item-block:hover .news-item-text div{
	opacity: 1;
	animation: opac-in-animate 0.5s ease-in forwards;    
}
.news-slider .news-item-link{
    margin-top: var(--mid-pad); 
}
.news-slider .news-item-block:hover .txt-btn span{
	opacity: 1;
	transition: opacity 0.4s ease-in;
}
.news-slider .news-item-block:hover .txt-btn div {
    left: calc(100% - var(--main-pad));
    transition: left 0.4s ease-out;
}

/* CATEGORY STYLES *****************************/

.category-wrap{
    padding-top: 192px;
}

.category-wrapper{
	position: relative;
	display: flex;
/*	flex-direction: column;	*/
	width:100%;
	margin-bottom: var(--xxl-pad);
}
.category-view{
	position: relative;
	display: flex;
	flex-direction: column;	
    width: 60%;
    width: calc(100% - 480px);
    padding: 0 var(--lg-pad) 0 0;
}
.category-right{
	position: relative;
	display: flex;
	flex-direction: column;	
    width: 40%;
    width: 480px;
	padding: 80px 0 0 var(--lg-pad);
}
.cat-header{
	position: relative;
	display: flex;
	flex-direction: column;	
	width: 100%;
	margin-bottom: var(--lg-pad);	
}

.category-news-blocks{
	position: relative;
	display: flex;
	flex-wrap: wrap;
    margin-left: -12px;
    margin-right: -12px;
}
.category-news-blocks .news-item{
	position: relative;
	display: flex;
	flex-direction: column;
    padding: 0 var(--sm-pad);
    width: 50%;
	margin-bottom: var(--lg-pad);	
}

.news-item-full{
	position: relative;
	display: flex;
	flex-direction: column;
	margin-bottom: var(--lg-pad);    
}
.news-item-full .news-img-blk {
    height: 320px;
}
.news-item-full .news-img a{
    border-radius: var(--main-radius);
}

/* QUOTES STYLES *****************************/
#quotes-banner{
    opacity: 0;
}

#quotes-banner.content-banner-wrap{
    padding-bottom: 0;
}
#quotes-banner.animate{
    animation: opac-in-animate 0.8s ease-out forwards;
}

#quotes-slider{
    margin: 0;
    margin-left: var(--sm-neg);
    margin-right: var(--sm-neg);
    padding-bottom: 48px;
/*    overflow: initial;*/
}
#quotes-slider .swiper-slide{
    padding: 0 var(--sm-pad);
/*    width: 20%;*/
}

#quotes-slider .swiper-slide.swiper-slide-active{

}


.quote-block{
	position: relative;
	display: flex;
	flex-direction: column;
/*
    padding: var(--main-pad);
    border-radius: var(--main-radius); 
*/
    background:var(--white-color);
    width: 100%;
    height: 100%;
    transition: all 0.4s ease;
}
.quote-block-score{
	position: relative;
	display: flex; 
    margin-bottom: var(--med-pad);
}
.quote-block-score span{
	position: relative;
	display: flex;
	flex-direction: column; 
    justify-content: center;
    margin-right: var(--xxs-pad);
    color: var(--dark-bg-color);   
}
.quote-block-score span.quote-score-filled{
    color: var(--sub-color);   
}
/*
.quote-block-score span img{
    height: var(--mid-pad);
    width: auto;
}
*/
.quote-block-title{
    font-size: 18px;
    font-weight: 700;
    color: var(--text-color);
}
.quote-block-text{
    font-size: 24px;
    font-weight: 300;
    margin-bottom: var(--main-pad);
}
.quote-name{
    position: relative;
	display: flex;
	flex-direction: column; 
    line-height: 20px;
}
.quote-name div{
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 700; 
    color: var(--text-color);
}


.swiper-horizontal > .swiper-scrollbar, 
.swiper-scrollbar.swiper-scrollbar-horizontal {
    position: absolute;
    position: relative;
    left: 0;
    top: 22px;
    bottom: initial;
    height: 4px;
    width: 98%;
    z-index: 5;
}

.swiper-controls {
    position: relative;
    display: flex;
    width: 20%;
    min-width: 320px;
    margin-top: 24px;
    top: initial;
    bottom: initial;
    height: 48px;
    padding: 0 ;
}

#quotes-slider .swiper-controls {
    width: 25%;
    padding: 0 var(--sm-pad);    
}

.swiper-controls .swiper-scrollbar{
    position: relative;
    display: flex;
    width: 70%;
    margin-left: 24px;
}
#quotes-slider .swiper-controls .swiper-scrollbar{
    margin-left: 0;
    margin-right: 24px;    
}

.swiper-controls .swiper-navigation{
    position: relative;
    display: flex;
    width: 30%;
}
.swiper-controls .swiper-navigation .swiper-button-prev{
    left: 0;
    background: transparent;
    border: none;
}
.swiper-controls .swiper-navigation .swiper-button-next{
    right: 0;
    background: transparent;
    border: none;
}

.swiper-scrollbar {
    border-radius: 0px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(var(--main-color-rgb), 0.24);
}
.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: var(--main-color);
    border-radius: 0px;
    left: 0;
    top: 0;
}

.white-color .swiper-button-prev:after,
.white-color .swiper-button-next:after {
    color: var(--white-color);
}

.white-color .swiper-scrollbar {
    background: var(--main-white-alpha-color);
}
.white-color .swiper-scrollbar-drag {
    background: var(--white-color);
}


.view-img-btn{
	position: relative;
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: var(--med-pad);
	height: var(--med-pad);
	line-height: var(--med-pad);
	font-size: var(--icon-font);
	color: var(--text-color);
    background: var(--hover-white-alpha-color);
    background: var(--bg-color);
	box-shadow: none;
	outline: none;
	border: none;
	border-radius: 50%;
	transition: all 0.2s ease;
}
.swiper-img-link{
	position: relative;
	display: flex;
	flex-direction: column;    
}
.swiper-img-link:hover .view-img-btn,
.view-img-btn:hover,
.view-img-btn:active,
.view-img-btn:focus{
	color: var(--white-color);
	background: var(--sub-color);
    transition: all 0.4s ease-out;
}

.swiper-img-link .view-img-btn{
    position: absolute;
    top:var(--main-pad); 
    right:var(--main-pad); 
}


/*
#quotes-banner .swiper-navigation,
#quotes-banner .swiper-scrollbar{
    display: none;
}
*/

/* PARTNER STYLES *****************************/

#partners-banner{
    overflow: hidden;
    opacity: 0;
}

#partner-slider .swiper-slide{
    padding: 0 2px;
    width: calc(100% / 6);
    
}
#partner-slider .swiper-slide a{
	position: relative;
	display: flex;
}

.content-logo-block {
	position: relative;
	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    padding: var(--main-pad) var(--lg-pad);
    width: 100%;
    background: rgba(var(--sub-color-rgb), 0.16);
    opacity: 0;
}
.content-logo-block img{
    height: auto;
    width: 100%;
}
#partners-banner.animate{
    animation: opac-in-animate 0.7s ease-out forwards;
}
#partners-banner.animate .content-logo-block{
    animation: btm-in-animate 0.3s ease-out forwards;
}
#partners-banner.animate .swiper-slide:nth-child(1) .content-logo-block {
    animation-delay: 0.2s;
}
#partners-banner.animate .swiper-slide:nth-child(2) .content-logo-block {
    animation-delay: 0.4s;
}
#partners-banner.animate .swiper-slide:nth-child(3) .content-logo-block {
    animation-delay: 0.6s;
}
#partners-banner.animate .swiper-slide:nth-child(4) .content-logo-block {
    animation-delay: 0.8s;
}
#partners-banner.animate .swiper-slide:nth-child(5) .content-logo-block {
    animation-delay: 1.0s;
}
#partners-banner.animate .swiper-slide:nth-child(6) .content-logo-block {
    animation-delay: 1.2s;
}
#partners-banner.animate .swiper-slide:nth-child(7) .content-logo-block {
    animation-delay: 1.4s;
}
#partners-banner.animate .swiper-slide:nth-child(8) .content-logo-block {
    animation-delay: 1.6s;
}


/* YOUTUBE BANNER STYLES *****************************/

#youtube-banner{
    padding-top: 0;
    opacity: 0;
}
#youtube-banner.animate{
    animation: btm-in-animate 0.8s ease-out forwards;
}

#youtube-banner .content-banner{
    flex-wrap: wrap;
    background:var(--main-color);
    background: url(../images/matricardi-youtube-bg.webp) var(--main-color) right top no-repeat;
    background-size: contain;
    color: var(--white-color);
    padding: var(--lg-pad) var(--lg-pad);
}
#youtube-banner .content-banner:before{
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(var(--main-color-rgb), 0.48);
    backdrop-filter: blur(2px);
}
#youtube-banner .content-banner .banner-blk-txt{
    padding-top: var(--med-pad);
}
#youtube-banner .content-banner .banner-blk-img{
    flex-direction: row;
    justify-content: center;
    opacity: 0;
}
#youtube-banner .content-banner .banner-blk-img img{
/*    padding: 0 12%;*/
    height: 280px;
    aspect-ratio: 1 / 1;
}

#youtube-videos{
    position: relative;
    display: flex;
    width: 100%;
    padding: 0 var(--main-pad);
}

.youtube-video-blk{
    position: relative;
    display: flex;
    width: 16%;
    margin-right:var(--xxs-pad); 
    opacity: 0;
}
.youtube-video-blk a{
    position: relative;
    display: flex;
    background:var(--main-color);
}
.youtube-video-blk a img{
    position: relative;
    z-index: 1;
}
.youtube-video-blk a:before{
	content: "";
 	position: absolute;
	display: flex;
	width: 100%;
	height: 100%;
	top: 0;
    left: 0;
	z-index: 2;    
    background: rgba(var(--main-color-rgb), 0.8);
    opacity: 1;
}
.youtube-video-blk:first-child a:before,
.youtube-video-blk a:hover:before{
    opacity: 0;
    transition: opacity 0.4s ease-out;
}

#youtube-banner.animate .content-banner .banner-blk-img{
    animation: opac-in-animate 0.7s ease-in forwards;
    animation-delay: 0.6s;
}

#youtube-banner.animate .youtube-video-blk{
    animation: btm-in-animate 0.4s ease-out forwards;
}
#youtube-banner.animate .youtube-video-blk:nth-child(1){
    animation-delay: 0.6s;
}
#youtube-banner.animate .youtube-video-blk:nth-child(2){
    animation-delay: 0.8s;
}
#youtube-banner.animate .youtube-video-blk:nth-child(3){
    animation-delay: 1.0s;
}
#youtube-banner.animate .youtube-video-blk:nth-child(4){
    animation-delay: 1.2s;
}
#youtube-banner.animate .youtube-video-blk:nth-child(5){
    animation-delay: 1.4s;
}
#youtube-videos .txt-btn,
#youtube-videos a.txt-btn,
#youtube-videos a.txt-btn:visited{
    color:var(--white-color);
}

/* LIGHT GALLERY STYLES *****************************/

.lg-backdrop,
.lg-outer .lg-thumb-outer{
	background: transparent;
	background:var(--white-color); 
}
.lg-counter,
.lg-toolbar .lg-icon,
.lg-sub-html{
	color: var(--text-color);
}
.lg-next, .lg-prev{
	background: transparent;
	color: var(--text-color);
}
.lg-next:before {
    content: "\f054";
	font-family: "Font Awesome 6 Pro";
}
.lg-prev:after {
    content: "\f053";
	font-family: "Font Awesome 6 Pro";
}
.lg-toolbar .lg-icon:hover,
.lg-next:hover:not(.disabled), 
.lg-prev:hover:not(.disabled) {
    color: var(--sub-color);
	transition: all 0.2s ease;
}
.lg-outer .lg-thumb-item.active, 
.lg-outer .lg-thumb-item:hover {
    border-color: var(--grey-color);
}


/* PAGE STYLES *****************************/
.sub-page.sub-gradient-1::before {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 16%;
    background: linear-gradient(180deg, #F2F2F2 0%, rgba(242, 242, 242, 0.00) 100%);
    z-index: 0;
}

.sub-page.sub-gradient-1 .content-banner-wrap{
    background: transparent;
    z-index: 1;
}
.menu-open.sub-page.sub-gradient-1 .content-banner-wrap{
    background:var(--white-color);
}
.page-wrap #content-main,
.page-wrap .page-body{
    background:var(--white-color);
}

.sub-page #content-wrapper.page-wrapper {
	padding: 0;
    background:var(--white-color);
}
.page-wrapper #content-main{
	padding: 0;
}
.page-row {
	display: flex;
}
.page-top,
.page-main {
	position: relative;
	display: flex;
	flex-direction: column;
}
.page-top{
	padding-top: 128px;
	background: var(--light-bg-color);
/*	overflow: hidden;*/
}
.page-main {
	padding: 80px 0 144px 0;
}
.page-top-content,
.page-body{
	position: relative;
	padding: 0;
/*	width: 720px;*/
	margin: 0 auto;
}
.page-body{
	position: relative;
	display: flex;
	flex-direction: column;	
	margin-bottom: var(--xxl-pad);
}
.page-content{
	position: relative;
	display: flex;
	flex-direction: column;	    
}
.page-center-content .page-body,
.page-full .page-body{
	width: 960px;
    max-width: 100%;
}
.page-top-content{
	padding: var(--xxl-pad) 0 var(--lg-pad) 0;
}
.page-header {
	margin-bottom: var(--main-pad);
}
.page-header h1,
.page-header h2 {
	position: relative;
	margin: 0;
}

.page-intro-content{
    font-size: 24px;
    line-height: 1.4;
}
.page-full-content{
	position: relative;
	display: flex;
	flex-direction: column;	
	margin-bottom: var(--main-pad);    
}
.page-full-buttons{
	position: relative;
	display: flex;
}
.page-full-buttons .button{
	margin-right: var(--mid-pad); 
}
.info-page #dark-banner{
    margin-bottom: 96px;
}

/*
.page-top-image{
	position: relative;
	display: flex;
	flex-direction: column;
}
.page-top-image:after{
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 50%;
	left: 0%;
	top: 0;
	z-index: 0;
	background: var(--light-bg-color);
}
.page-top-image img{
	position: relative;
	width: 100%;
	height: auto;
	z-index: 1;
}
*/

.page-top-center{
	text-align: center;
}

.page-content {
	position: relative;
	display: flex;
	flex-direction: column;
	color: var(--text-color);
}
.page-content b {
	font-weight: 600;
}
.page-content p + h2,
.page-content p + h3,
.page-content p + h4{
	margin-top: var(--main-pad);
	margin-top: var(--xs-pad);
}
.article-text ul, 
.page-content ul {
	list-style: none;
	padding: 0;
	margin: 0 0px var(--main-pad) 0px;
}
.page-content h2 + ul,
.page-content h3 + ul,
.page-content h3 + ul{
	margin-top: var(--mid-pad);
}
.article-text ul li,
.page-content ul li {
	position: relative;
	line-height: 24px;
	margin: 0px 0px var(--xs-pad) 0px;
	padding: 0px 0px 0px 24px;
}
.article-text ul li:before,
.page-content ul li:before {
/*	content: "\e122";*/
	content: "\f00c";
	position: absolute;
	top: 0px;
	left: 0px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: left;
	width: var(--main-pad);
	height: var(--main-pad);
	line-height: var(--main-pad);
	color: var(--text-color);
	background: none;
	font-weight: 700;
	font-size: 16px;
	font-family: "Font Awesome 6 Pro";
	font-weight: 300;
}
.page-content p a:not(.button),
.article-text p a:not(.button){
	text-decoration: underline;
}
.page-content p a:hover,
.article-text p a:hover{
	text-decoration: none;
}

.page-highlight{
	color: var(--sub-color);
	font-weight: 600;
}
.page-buttons{
	position: relative;
	display: flex;	
	margin: var(--main-pad) 0;
}
.page-top-center .page-buttons{
	justify-content: center;
	margin-bottom: var(--lg-pad);
}
.page-buttons .img-btn,
.page-buttons .button{
	margin-right: var(--main-pad);
}
.page-top-center .page-buttons .img-btn,
.page-top-center .page-buttons .button{
	margin: 0 var(--xs-pad);
}
.page-form{
	position: relative;
	display: flex;
	flex-direction: column;
}

/* CONTACT PAGE *****************************/

.contact-page {
	/*	overflow: hidden;*/
    
    background: radial-gradient(60% 66% at 0% 0%, rgba(177, 153, 127, 0.36) 0%, rgba(177, 153, 127, 0.00) 100%);
}
.contact-page #content-main,
.contact-page .content-banner-wrap{
    background: transparent;
}
.contact-page .content-main-wrapper{
    position: relative;
    display: flex;
    margin: 0;
}

.contact-page .content-banner-top{
    margin-bottom: var(--lg-pad);
}
.contact-page .content-banner-top h1{
    font-size: 72px;
    line-height: 1;
}

.contact-page .intro-txt{
    margin-top: 8px;
}

.contact-page .content-left,
.contact-page .content-right,
.contact-banner .content-left,
.contact-banner .content-right{
	position: relative;
    flex-direction: column;
	width: 50%;
}
.contact-page .content-left{
    padding-left: 0;
    padding-right: var(--lg-pad);
}

.content-user-info{
    display: flex;
}
.content-user-img{
	position: relative;
	display: flex;
	flex-direction: column;    
}
.content-user-img span{
	position: relative;
	display: flex;
	flex-direction: column;
    width: 80px;
    border-radius: 50%;
    overflow: hidden;
}
.content-user-img img{
    height: 80px;
    width: auto;
}
.content-user-title{
	position: relative;
	display: flex;
	flex-direction: column;
    justify-content: center;
    width: calc(100% - 80px);
    padding: 0 var(--mid-pad);
}
.content-user-title div{
    color: var(--text-color);    
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    
}
.content-user-title span{
    color: var(--light-text-color);    
    font-weight: 400;    
}
.content-user-title span p{
    margin: 0;
}

.contact-page .content-right {
    padding-left: var(--main-pad);
}
.contact-form-block {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: var(--lg-pad);
	background: var(--bg-color);
    color: var(--text-color);
}
.content-form-text p {
	position: relative;
    color: var(--med-text-color);
}
.content-form-text p:last-child {
	margin-bottom: var(--lg-pad);    
}
.content-form-title {
	position: relative;
	margin-top: var(--sm-pad);
	margin-bottom: var(--mid-pad);
}
.content-form-title h2,
.content-form-title h3 {
    color: var(--text-color);
	margin: 0;
}
.contact-form-block textarea.form-control {
	min-height: 112px;
}
.contact-form-block .form-btns{
    display: flex;
/*    justify-content: flex-end;*/
}
.contact-form-block .form-btns .button{
	min-width: 120px;
	justify-content: center;
}
.contact-form-block .form-btns .button.disabled {
    opacity: .48;
    pointer-events: none;
}

#contact-info{
    margin-top: auto;
}

.contact-banner .content-left .banner-blk-txt{
    padding: 0;
    width: 70%;
}
#contact-banner{
    overflow: hidden;
}
#contact-banner,
#listing-banner + #contact-banner{
    padding-top: 0;
}

#listing-wrapper + #contact-banner{
    padding-top: 192px;
}

#contact-banner .banner-blk-txt,
#contact-banner #contact-form-wrap,
#contact-banner .info-blocks{
    opacity: 0;
}
#contact-banner.animate .banner-blk-txt{
    animation: opac-in-animate 0.7s ease-in forwards;
}
#contact-banner.animate #contact-form-wrap{
    animation: btm-in-animate 0.7s ease-out forwards;
}
#contact-banner.animate .info-blocks{
    animation: btm-in-animate 0.7s ease-out forwards;
    animation-delay: 0.4s;
}


/* FAQ STYLES *****************************/


.faq-wrapper{
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 96px 0px;
}
.faq-category{
	position: relative;
	display: flex;
	flex-direction: column;
	margin: 0;
	margin-bottom:var(--main-pad);
}
.faq-category-title{
	position: relative;
    color: var(--text-color);
	margin-bottom:var(--lg-pad);
}
.faq-category-title h3{
	margin: 0;
}
.faq-block-wrap{
	position: relative;
	display: flex;
    flex-wrap: wrap;
    column-gap: 24px;
}
.faq-block{
	position: relative;
    display: flex;
    flex-direction: column;
    align-self: flex-start;
    width: 100%;
/*	width: calc(50% - 12px);*/
/*    margin-bottom:var(--mid-pad);*/
	color: var(--white-color);
    border-bottom: 1px solid var(--white-alpha-color);
}
.accordion-item:first-of-type,
.accordion-item:last-of-type{
    
}
.faq-title{
	position: relative;
	border: none;
    background: none;
    padding: 20px 48px 20px 0px;
    line-height: var(--main-pad);
    font-size: 14px;
    outline: none;
    border-radius: 0;
    color: var(--white-color);
	transition: all 0.2s ease-in-out;
}
.faq-title:hover,
.faq-title:not(.collapsed){
	color: var(--sub-color);
}
.faq-title h5{
    text-transform: none;
	margin: 0;
	line-height: var(--main-pad);
}
.accordion-button:after {
	content: "\2b";
    position: absolute;
    top: 20px;
    right: 16px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    width: var(--main-pad);
    height: var(--main-pad);
    line-height: var(--main-pad);
    background: none;
    font-weight: 300;
    font-size: var(--icon-font);
    font-family: "Font Awesome 6 Pro";
	transform: rotate(0deg);
    transition: transform .2s ease-in-out;
}
.accordion-button:not(.collapsed):after {
    content: "\f068";
    background: none;
    transform: rotate(-180deg);
}
.faq-answer-content{
	position: relative;
	display: block;
    color: var(--white-color);
	padding: 0 var(--main-pad) var(--main-pad) 0;
}
.faq-answer-content p:last-child{
	margin-bottom: 0;
}

/* CONTENT OVERRIDES *****************************/


#light-banner,
#dark-banner{
    padding-bottom: 0;
}
.home-wrap #light-banner{
    padding-top: 0;
}

#light-banner .content-text-blocks,
#dark-banner .content-text-blocks{
    margin-top: var(--xl-pad); 
    padding: 0 var(--main-pad); 
}

#light-banner .banner-fade-img,
#dark-banner .banner-fade-img{
    margin-top: -160px;
}


#home-banner-3 > .container{
    position: relative;
    z-index: 2;
}
#home-banner-4 .content-logo-blocks{
    margin-top: var(--mid-pad); 
}


.banner-top-page #content-banner-1{
    z-index: 3;
}




/* PAGINATION STYLES *****************************/

.pagination {
	position: relative;
	margin: var(--lg-pad) 0;
}

.page-link {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	color: var(--main-color);
	text-decoration: none;
	background-color: #fff;
	border: none;
	padding: 8px;
	width: 48px;
	height: 48px;
	transition: all 0.2s ease-in-out;
}
.page-link:hover {
	z-index: 2;
	color: var(--white-color);
	background-color: var(--grey-color);
	/*    border-color: var(--main-color);*/
}
.page-link:focus {
	color: var(--white-color);
	background-color: var(--grey-color);
	box-shadow: none;
}
.page-item.active .page-link {
	background: var(--main-color);
}
.page-item:first-child .page-link,
.page-item:last-child .page-link {
	border-radius: 0;
}

/* SKELETON LOADER STYLES *****************************/
.skeleton-loader {
    position: relative;
    overflow: hidden;
    background-color: var(--bg-color);
}

.skeleton-loader::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: translateX(-100%);
    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0) 0,
        rgba(255, 255, 255, 0.12) 20%,
        rgba(255, 255, 255, 0.24) 60%,
        rgba(255, 255, 255, 0)
    );
    animation: shimmer 1s infinite;
}

@keyframes shimmer {
    100% {
        transform: translateX(100%);
    }
}

.skeleton-loader.loaded::after {
    display: none;
}

/* RESPONSIVE WARNING STYLES *****************************/
.responsive-warning-container {
    position: fixed;
    background: var(--dark-main-color);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 99999;
    color: var(--white-color);
    display: none;
}
.responsive-warning-container.show-warning {
    display: flex;
}
.responsive-warning {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.responsive-warning-icon {
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--main-white-alpha-color);
    color: var(--sub-color);
    font-size: var(--main-icon-font);
    border-radius: 50%;
    margin-bottom: var(--main-pad);
}
.responsive-warning-content {
    width: 80%;
}
.responsive-warning-content h1 {
    line-height: 1.2;
    margin-bottom: var(--xs-pad);
}
.responsive-warning-content p {
    margin-bottom: var(--main-pad);
}

/* FOOTER STYLES *****************************/

#footer {
	position: relative;
	padding: 0;
	margin: 0;
	background: var(--white-color);
    border-top: 1px solid var(--bg-color);
}
/*
.footer-top {
    background: linear-gradient(204deg, rgba(255, 255, 255, 0.08) 15.56%, rgba(255, 255, 255, 0.00) 84.44%);
}
*/
.footer-content {
	position: relative;
	display: flex;
    font-size: var(--main-font);
	padding: 0px;
    margin-left: -48px;
    margin-right: -48px;
	color: var(--light-text-color);	
}

.footer-menu {
	position: relative;
	display: flex;
	flex-direction: column;
    padding:var(--lg-pad) var(--lg-pad) var(--lg-pad) var(--lg-pad);
	width: 25%;
    border-right: 1px solid var(--bg-color);
}
.footer-menu.footer-last-col {
    border:0px;
}
.footer-menu-title {
	color: var(--text-color);
    margin-bottom: var(--mid-pad);
}
.footer-menu-title div{
    font-size: 14px;
    font-weight: 500;
    line-height: 1.2;
    text-transform: uppercase;
    margin-bottom: var(--xs-pad);
	margin: 0;
}
.footer-menu-margin {
	margin-top: var(--lg-pad); 
}

.footer-menu-list {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 0;
	margin: 0;
	list-style: none;
}
.footer-menu-list li {
	margin: 0;
	padding: var(--xxs-pad) 0;
	line-height: var(--mid-pad);
}
.footer-menu-list a {
    position: relative;
    left: 0;
	color: var(--light-text-color);	
	font-weight: 300;
	transition: color ease 0.2s, font-weight ease 0.2s, left ease 0.2s;
}
.footer-menu-list a:hover {
	color: var(--sub-color);
	font-weight: 600;
    left: var(--xxs-pad);
	transition: color ease-out 0.4s, font-weight ease-out 0.4s, left ease-out 0.4s;
}
.footer-menu-list li a i{
	position: relative;
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;	
	width: var(--main-pad);
	height: var(--main-pad);
	line-height: var(--main-pad);
	color: var(--sub-color);
	margin-right: var(--xs-pad); 
}

/*
.footer-last-col{
	position: relative;
	display: flex;
	flex-direction: column;
    padding:var(--xl-pad) var(--lg-pad) var(--lg-pad) var(--lg-pad);
	width: 25%;    
}
*/

/*
.footer-form{
	display: flex;
    flex-direction: column;
}
.newsletter-form{
    position: relative;
	display: flex;
    flex-direction: column;
	width: 100%;
}
.footer-form .form-group{
	display: flex;
	width: 100%;
}
.footer-form .i-btn{
    position: absolute;
    top:4px;
    right: 4px;
}
.footer-form .form-group .error-text{
	left: 16px;
	bottom: -24px;
}
.footer-form .form-control{
	background:var(--bg-color);
}

#success-newsletteremail{
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--bg-color);
	background: var(--white-color);
}

.success-text{
	position: relative;
	display: flex;
	text-align: left;
	color: var(--text-color);
	padding: 0 var(--xs-pad); 
	margin-top: var(--sm-pad);  
}
.success-text i{
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    height: var(--main-pad);
    width: var(--main-pad);
	color: var(--green-color);
    line-height: var(--main-pad);
	margin-right: var(--xs-pad); 
    font-size: 16px;
    text-decoration: none;
}
.success-text span{
	line-height: 22px;
}

*/


.footer-social {
	position: relative;
	display: flex;
	padding: 0;
    margin-top: auto;
    margin-top: var(--main-pad);
	color: var(--white-color);
}
.footer-socials{
	list-style: none;
	display: flex;
	margin: 0;
	padding: 0;
    align-self: flex-start;
}
.footer-socials li{
	margin: 0 var(--xs-pad) 0 0;
	padding: 0;
}
.footer-social a{
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;	
	width: var(--med-pad);
	height: var(--med-pad);
	line-height: var(--med-pad);
	color: var(--sub-color);
    font-size: 16px;
}
.footer-social a:hover{
	color: var(--text-color);
}


.footer-bottom {
	position: relative;
	display: flex;
    font-size: var(--sm-font);
    border-top: 1px solid var(--bg-color);
    color: var(--light-text-color);	
	padding: var(--lg-pad) 0px;
}

.footer-bottom .container{
	position: relative;
	display: flex;
}
.footer-bottom-content {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 0 0px;
	width: 50%;
}
.footer-logo {
	position: relative;
	padding: 0px;
	margin-bottom:var(--mid-pad); 
}
.footer-logo img {
	height: 32px;
	width: auto;
}

.footer-sub-links {
	position: relative;
	display: flex;
    flex-direction: column;
    align-items: flex-end;
    align-self: flex-end;
	width: 50%;
}
.footer-sub-links ul {
	position: relative;
	display: flex;
	padding: 0;
	margin: 0;
	list-style: none;
}
.footer-sub-links li {
	margin: 0;
    margin-left: var(--mid-pad); 
	padding: var(--xs-pad) 0;
	line-height: var(--main-pad);
}
.footer-sub-links a {
	color: var(--light-text-color);	
	font-weight: 300;
	transition: color ease 0.2s, font-weight ease 0.2s;
}
.footer-sub-links a:hover {
	color: var(--sub-color);
	transition: color ease-out 0.4s, font-weight ease-out 0.4s;
}

.footer-whatsapp{
    position: fixed;
	bottom: 48px;
	right: 48px;
	z-index: 3;
}
.whatsapp-button{
    position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
    align-items: center;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    font-size: 28px;
    color: var(--white-color);
    background: var(--wa-green-color);
    transition: all 0.2s ease-out;
}

.whatsapp-button:hover {
    color: var(--white-color);
    transform: scale(1.2);
    transition: all 0.35s cubic-bezier(.68, -.55, .27, 1.55);
}

/* EMPTY/ERROR PAGE STYLES *****************************/

.error-page {
	background: var(--bg-color);
}
.empty-page {
/*	display: none;*/
	height: 70vh;
	flex-direction: column;
	justify-content: center;
	background: var(--bg-color);
}
.show-page.empty-page {
	display: flex;
}
.error-page .empty-page {
	display: flex;
	width: 100%;
}
.empty-page-header {
    position: relative;
    display: flex;
	padding: var(--mid-pad) var(--main-pad);
	width: 100%;
	align-self: flex-start;
    justify-content: flex-start;    
	text-align: left;
}
.empty-page-header div{
    position: relative;
    display: flex;
    align-self: flex-start;
    flex-direction: column;
    justify-content: center; 
}
.empty-page-header div img {
	height: 40px;
	width: auto;
}
.empty-page-msg {
	width: 40%;
	align-self: center;
	text-align: center;
    color: var(--text-color); 
}
.empty-page-img {
	position: relative;
	margin-bottom: 24px;
/*    font-size: 96px;*/
    font-weight: 600;
    line-height: 1;
	padding: 0 25%;
}
.empty-page-img div img {
	height: 64px;
	width: auto;
}
.empty-page-txt {
    
}
.empty-page-title {
	font-size: 32px;
	font-weight: 600;
	line-height: 1.2;
	margin-bottom: var(--mid-pad);
}
.empty-page-txt p {
	color: var(--light-text-color);
    margin-bottom: var(--lg-pad);
    padding: 0 10%;
}
.empty-page-txt p span{
	color: var(--sub-color);
	font-weight: 600;
}

/* MODAL STYLES *****************************/

html.open-modal{
    overflow: hidden;
}
body.modal-open {
	padding: 0px !important;
	overflow-y: hidden;
}
.modal-backdrop {
	background: rgba(0, 0, 0, 1);
}
.modal-backdrop.in,
.modal-backdrop.show {
	opacity: 0.72;
}

/*
.gallery-page .modal-backdrop.in,
.gallery-page .modal-backdrop.show {
	opacity: 0.92;
}
*/

.modal {
	z-index: 9999;
}
.modal-open .modal {

}
.modal.modal-static .modal-dialog {
	-webkit-transform: none;
	transform: none;
}
.modal-dialog {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
	width: 33%;
	min-width: 520px;
	max-width: 90%;
	max-width: 560px;
	align-self: center;
	margin: 0px auto;
}
.modal-large .modal-dialog {
	width: 1120px;
	max-width: calc(100% - 32px);
}
.modal-content {
	position: relative;
	background: var(--white-color);
	border: 0px;
	box-shadow: 0px 0px 25px rgba(0, 0, 0, 0.1);
	box-shadow: var(--main-shadow);
	border-radius: var(--main-radius);
    border-radius: 0px;
}
.modal-content > * {
    opacity: 0;    
}
.show .modal-content > * {
    animation: opac-in-animate 0.5s ease-in forwards;   
    animation-delay: 0.4s;
}
.modal-content.modal-content-wrap {
	display: flex;
	flex-direction: row;
	padding: 0;
	background: var(--light-bg-color);
	overflow: hidden;
}
.modal-content-left {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 64px;
	width: 54%;
	height: 100%;
	background: var(--light-bg-color);
}
.modal-content-title {
	position: relative;
	height: 32px;
}
.modal-content-title h3,
.modal-content-title h4 {
	margin: 0;
}
.modal-content-text {
	position: relative;
	display: flex;
	flex-direction: column;
	margin-right: -16px;
	height: calc(100% - 32px);
	height: 560px;
	overflow: hidden;
}

.modal-header {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	padding: 48px 48px 24px 48px;
	border: 0px;
}
.modal-content-wrap .modal-header {
	padding: 48px 48px 0px 48px;
}
.modal-header h2,
.modal-header h3 {
	margin-bottom: 0px;
}
.modal-header p {
	margin: 0;
	color: var(--text-color);
}
.modal-body .content-banner-title{
    margin-top: 16px;
}
.btn-close {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	box-sizing: border-box;
	width: 24px;
	height: 24px;
	padding: 0;
	color: var(--main-color);
	background: none;
	border: 0;
	border-radius: 0px;
	font-size: 16px;
	opacity: 1;
	outline: none;
	transition: color 0.2s ease;
}
.btn-close:hover,
.btn-close:active,
.btn-close:focus {
	opacity: 1;
	box-shadow: none;
	outline: none;
	color: var(--sub-color);
	transition: color 0.4s ease-out;
}
.modal-header .btn-close {
	padding: 0;
	margin: 0;
	position: absolute;
	top: 24px;
	right: 24px;
}
.modal-content-wrap .modal-header .btn-close {
	top: 8px;
	right: 8px;
}
.modal-body {
	padding: 0px 48px;
	min-height: 160px;
}
.modal-body-padding{
    padding: 48px;
}
.modal-padding .modal-body {
	padding-bottom: 48px;
}
.modal-body .form-btns {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
	text-align: right;
	margin-bottom: 0;
}
.modal-body .form-btns .button{
    margin-left: 16px;
}
.modal-body p {
	margin: 0;
	margin-bottom: 24px;
}
.modal-footer {
	padding: 0px 48px 48px 48px;
	border: 0px;
	text-align: left;
	justify-content: flex-start;
}
.modal-footer > * {
	margin: 0;
}
.modal-success {
	position: relative;
	display: none;
	justify-content: center;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	border-radius: var(--main-radius);
	flex-direction: column;
	text-align: center;
	background: var(--bg-color);
	z-index: 9;
	opacity: 1;
}
#contact-form-wrap .modal-success {
    border-radius: 0;
}
.complete.modal-success {
	position: absolute;
	display: flex;
	padding: 0px;
	opacity: 1;
	animation: opac-in-animate 0.3s ease-out forwards;
}
.modal-success-block {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
	text-align: center;
	padding: 48px 24px;
	z-index: 9;
}
.modal-success-icon {
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	width: 96px;
	height: 96px;
	line-height: 96px;
	padding: 0;
	border-radius: 50%;
	font-size: 80px;
    color: var(--green-color); 
	margin: 0 auto 32px auto;
}
/*
.modal-success-icon {
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	width: 120px;
	height: 120px;
	padding: 4%;
	line-height: 116px;
	border-radius: 50%;
	border: 2px solid var(--border-color);
	font-size: 60px;
	margin: 0 auto 48px auto;
}
*/
.modal-success-icon img {
	display: none;
	margin: 0 auto;
}
.complete.modal-success .modal-success-icon img {
	display: flex;
}
.modal-success-block h3 {
}
.modal-success-block p {
	color: var(--light-text-color);
	margin-bottom: 48px;
	padding: 0 5%;
}

.modal-success-button {
	display: flex;
	justify-content: center;
}
.modal-success-button .button {
    
}
#download-modal .modal-body .form-btns{
    margin-top: 32px;
}

#download-modal .modal-success-block{
    padding: 48px 48px;
}

#download-modal .modal-success-icon {
    width: 80px;
	height: 80px;
	line-height: 80px;
    font-size: 40px;
    color: #259860;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(37, 152, 96, 0.16) 100%);
}
#download-modal .modal-success-button .button {
    width: 100%;
}

/* Loader *****************************************/

.waiting {
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(255, 255, 255, 1);
	background: var(--bg-color);
	z-index: 9;
	text-align: center;
	vertical-align: middle;
}
.form-wrap .waiting {
	width: 102%;
	left: -1%;
}

#job-modal .waiting {
    background: #FFFFFF!important;
    height: calc(100% + 128px);
    width: calc(100% + 96px);
    top: -96px;
    left: -48px;
}
.form-wrapper .waiting {
	background: #ffffff;
}

.loader-wrap {
	position: relative;
	display: flex;
	width: 100%;
	height: 100%;
	justify-content: center;
	opacity: 0;
	animation: opac-in-animate 0.3s ease-out forwards;
}

.lds-ripple {
	display: block;
	position: relative;
	width: 64px;
	height: 64px;
	width: 56px;
	height: 56px;
	display: flex;
	justify-content: center;
	/*	top: 150px;*/
	align-self: center;
}
.lds-ripple div {
	position: absolute;
	border: 3px solid var(--sub-color);
	opacity: 1;
	border-radius: 50%;
	animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite;
}
.lds-ripple div:nth-child(2) {
	animation-delay: -0.5s;
}
@keyframes lds-ripple {
	0% {
		top: 28px;
		left: 28px;
		width: 0;
		height: 0;
		opacity: 1;
	}
	100% {
		top: -1px;
		left: -1px;
		width: 58px;
		height: 58px;
		opacity: 0;
	}
}

/* SUB PAGE ANIMATIONS *****************************/

/* HOME */
#banner-main .banner-header,
#banner-main .banner-text-main,
#banner-main .banner-bg-image{
    opacity: 0;
}

#banner-main.animate .banner-bg-image{
    animation: text-blur-animate 0.3s ease-in forwards;
}


#banner-main.animate .banner-header{
    animation: text-blur-animate 0.7s ease-out forwards;
    animation-delay: 0.3s;
}
#banner-main.animate .banner-text-main{
    animation: text-blur-animate 0.7s ease-out forwards;
    animation-delay: 0.5s;
}


#banner-wrapper .banner-content-block {
    opacity: 0;
    transform: translateY(100%);
}
#banner-wrapper:has(.animate) .banner-content-block {
    opacity: 1;
    transform: translateY(0%);
    transition: transform 0.6s ease-out, opacity 0.2s ease-out;
    transition-delay: 0.8s;
}
#banner-wrapper:has(.animate) .banner-content-block.bcb-2 {
    transition-delay: 1s;
}
  

#home-banner-1 .content-banner .banner-blk-txt {
    opacity: 0;
    background: var(--white-color);
}
#home-banner-1.animate .content-banner .banner-blk-txt {
    animation: btm-in-animate 0.3s ease-out forwards;
}
#home-banner-1 .icon-block-inline {
    opacity: 0;
}
#home-banner-1.animate .icon-block-inline {
    animation: btm-in-animate 0.3s ease-out forwards;
}
#home-banner-1.animate #ib-1.icon-block-inline {
    animation-delay: 0.4s;
}
#home-banner-1.animate #ib-2.icon-block-inline {
    animation-delay: 0.5s;
}
#home-banner-1.animate #ib-3.icon-block-inline {
    animation-delay: 0.6s;
}
#home-banner-1.animate #ib-4.icon-block-inline {
    animation-delay: 0.7s;
}
#home-banner-1.animate #ib-5.icon-block-inline {
    animation-delay: 0.8s;
}

#listing-banner .banner-blk-txt,
#listing-banner .banner-blk-button,
#listing-banner .listing-block-wrap,
#listing-wrapper.listing-blocks .listing-block-wrap{
    opacity: 0;
}
#listing-banner.animate .banner-blk-txt {
    animation: btm-in-animate 0.4s ease-out forwards;
}
#listing-banner.animate .banner-blk-button {
    animation: opac-in-animate 0.4s ease-in forwards;
}
#listing-wrapper.listing-blocks .listing-block-wrap,
#listing-banner.animate .listing-block-wrap {
    animation: btm-in-animate 0.4s ease-out forwards;
}
#listing-wrapper.listing-blocks .listing-block-wrap:nth-child(1),
#listing-banner.animate .listing-block-wrap:nth-child(1) {
    animation-delay: 0.4s;
}
#listing-wrapper.listing-blocks .listing-block-wrap:nth-child(2),
#listing-banner.animate .listing-block-wrap:nth-child(2) {
    animation-delay: 0.6s;
}
#listing-wrapper.listing-blocks .listing-block-wrap:nth-child(3),
#listing-banner.animate .listing-block-wrap:nth-child(3) {
    animation-delay: 0.8s;
}

#listing-wrapper.listing-blocks .listing-block-wrap:nth-child(4) {
    animation-delay: 1.0s;
}
#listing-wrapper.listing-blocks .listing-block-wrap:nth-child(5) {
    animation-delay: 1.2s;
}
#listing-wrapper.listing-blocks .listing-block-wrap:nth-child(6) {
    animation-delay: 1.4s;
}
#listing-wrapper.listing-blocks .listing-block-wrap:nth-child(7) {
    animation-delay: 1.6s;
}
#listing-wrapper.listing-blocks .listing-block-wrap:nth-child(8) {
    animation-delay: 1.8s;
}
#listing-wrapper.listing-blocks .listing-block-wrap:nth-child(9) {
    animation-delay: 2.0s;
}
#listing-wrapper.listing-blocks .listing-block-wrap:nth-child(10) {
    animation-delay: 2.2s;
}
#listing-wrapper.listing-blocks .listing-block-wrap:nth-child(11) {
    animation-delay: 2.4s;
}
#listing-wrapper.listing-blocks .listing-block-wrap:nth-child(12) {
    animation-delay: 2.6s;
}


#light-banner .banner-blk-txt,
#light-banner .banner-fade-img,
#dark-banner .banner-blk-txt,
#dark-banner .banner-fade-img,
#light-banner .content-text-blocks .content-text-blk-wrap,
#dark-banner .content-text-blocks .content-text-blk-wrap
{
    opacity: 0;
}
#light-banner .banner-fade-img,
#dark-banner .banner-fade-img{
/*    height: 0;*/
    overflow: hidden;
    transform: scaleY(0);
    transform-origin: 50% 100%;
}

#light-banner.animate .banner-blk-txt,
#dark-banner.animate .banner-blk-txt {
    animation: opac-in-animate 0.7s ease-in forwards;
    animation-delay: 0.2s;
}

#light-banner.animate .banner-fade-img,
#dark-banner.animate .banner-fade-img {
    animation: height-animate 0.7s ease-out forwards;
}

#light-banner.animate .content-text-blocks .content-text-blk-wrap,
#dark-banner.animate .content-text-blocks .content-text-blk-wrap {
    animation: btm-in-animate 0.3s ease-in forwards;
}
#light-banner.animate .content-text-blocks .content-text-blk-wrap:nth-child(1),
#dark-banner.animate .content-text-blocks .content-text-blk-wrap:nth-child(1) {
    animation: btm-in-animate 0.3s ease-out forwards;
    animation-delay: 0.4s;
}
#light-banner.animate .content-text-blocks .content-text-blk-wrap:nth-child(2),
#dark-banner.animate .content-text-blocks .content-text-blk-wrap:nth-child(2) {
    animation: btm-in-animate 0.3s ease-out forwards;
    animation-delay: 0.6s;
}
#light-banner.animate .content-text-blocks .content-text-blk-wrap:nth-child(3),
#dark-banner.animate .content-text-blocks .content-text-blk-wrap:nth-child(3) {
    animation: btm-in-animate 0.3s ease-out forwards;
    animation-delay: 0.8s;
}
#light-banner.animate .content-text-blocks .content-text-blk-wrap:nth-child(4),
#dark-banner.animate .content-text-blocks .content-text-blk-wrap:nth-child(4) {
    animation: btm-in-animate 0.3s ease-out forwards;
    animation-delay: 1.0s;
}


#listing-top .banner-blk-txt,
#listing-top .icon-block .icon-block-wrap{
    opacity: 0;
}
#listing-top.animate .banner-blk-txt,
#listing-top.animate .icon-block .icon-block-wrap{
    animation: btm-in-animate 0.3s ease-out forwards;
}
#listing-top.animate .banner-blk-txt:nth-child(2) {
    animation-delay: 0.4s;
}
#listing-top.animate .icon-block:nth-child(1) .icon-block-wrap{
    animation-delay: 0.6s;
}
#listing-top.animate .icon-block:nth-child(2) .icon-block-wrap{
    animation-delay: 0.8s;
}
#listing-top.animate .icon-block:nth-child(3) .icon-block-wrap{
    animation-delay: 1.0s;
}
#listing-top.animate .icon-block:nth-child(4) .icon-block-wrap{
    animation-delay: 1.2s;
}

#amenities-banner{
    overflow: hidden;
}
#amenities-banner .banner-blk-txt{
    opacity: 0;
}
#amenities-banner.animate .banner-blk-txt{
    animation: left-in-animate 0.3s ease-out forwards;
}

#location-banner .blk-bg-light,
#location-banner .blk-bg-dark{
    opacity: 0;
    transform: scale(0.5);
}
#location-banner.animate .blk-bg-light,
#location-banner.animate .blk-bg-dark{
    opacity: 1;
    transform: scale(1);
    transform-origin: 50% 75%;
    transition: all 0.6s ease-out;
}
#location-banner.animate .blk-bg-dark{
    transition-delay: 0.2s;
}

#main-images .banner-blk-txt,
#prices-images .banner-blk-txt,
#facilities .banner-blk-txt{
    opacity: 0;
}
#main-images.animate .banner-blk-txt,
#prices-images.animate .banner-blk-txt,
#facilities.animate .banner-blk-txt{
    animation: opac-in-animate 0.6s ease-out forwards;
}

#main-images .swiper-img-link,
#prices-images .swiper-img-link{
    opacity: 0;
}

#main-images.animate .swiper-img-link,
#prices-images.animate .swiper-img-link{    
    animation: right-in-animate 0.6s ease-out forwards;
}
#main-images.animate .swiper-slide:nth-child(1) .swiper-img-link,
#prices-images.animate .swiper-slide:nth-child(1) .swiper-img-link{
    animation-delay: 0.2s;
}
#main-images.animate .swiper-slide:nth-child(2) .swiper-img-link,
#prices-images.animate .swiper-slide:nth-child(2) .swiper-img-link{
    animation-delay: 0.5s;
}
#main-images.animate .swiper-slide:nth-child(3) .swiper-img-link,
#prices-images.animate .swiper-slide:nth-child(3) .swiper-img-link{
    animation-delay: 0.8s;
}

#facilities .content-img-block-wrap{
    opacity: 0;
}
#facilities.animate .content-img-block-wrap{
    animation: btm-in-animate 0.4s ease-out forwards;
}
#facilities.animate .content-img-block-wrap:nth-child(2) {
    animation-delay: 0.2s;
}
#facilities.animate .content-img-block-wrap:nth-child(3){
    animation-delay: 0.4s;
}
#facilities.animate .content-img-block-wrap:nth-child(4){
    animation-delay: 0.6s;
}
#facilities.animate .content-img-block-wrap:nth-child(5){
    animation-delay: 0.8s;
}
#facilities.animate .content-img-block-wrap:nth-child(6){
    animation-delay: 1.0s;
}
#facilities.animate .content-img-block-wrap:nth-child(7){
    animation-delay: 1.2s;
}
#facilities.animate .content-img-block-wrap:nth-child(8){
    animation-delay: 1.4s;
}

/*
#property-top{
    opacity: 0;
    animation: opac-in-animate 0.5s ease-out forwards;
}
*/

#property-icons .icon-block{
    opacity: 0;
}
#property-icons .icon-block{
    animation: btm-in-animate 0.4s ease-out forwards;
}
#property-icons .icon-block:nth-child(2) {
    animation-delay: 0.2s;
}
#property-icons .icon-block:nth-child(3){
    animation-delay: 0.4s;
}
#property-icons .icon-block:nth-child(4){
    animation-delay: 0.6s;
}
#property-icons .icon-block:nth-child(5){
    animation-delay: 0.8s;
}
#property-icons .icon-block:nth-child(6){
    animation-delay: 1.0s;
}
#property-icons .icon-block:nth-child(7){
    animation-delay: 1.2s;
}
#property-icons .icon-block:nth-child(8){
    animation-delay: 1.4s;
}
#property-icons .icon-block:nth-child(9){
    animation-delay: 1.6s;
}
#property-icons .icon-block:nth-child(10){
    animation-delay: 1.8s;
}
#property-icons .icon-block:nth-child(11){
    animation-delay: 2.0s;
}
#property-icons .icon-block:nth-child(12){
    animation-delay: 2.2s;
}
#property-icons .icon-block:nth-child(13){
    animation-delay: 2.4s;
}
#property-icons .icon-block:nth-child(14){
    animation-delay: 2.6s;
}


#property-details .content-banner{
    opacity: 0;
}
#property-details .content-banner.animate{
    animation: btm-in-animate 0.5s ease-out forwards;
}
.property-page .content-banner-wrap-sm{
    opacity: 0;
}
.property-page .content-banner-wrap-sm.animate{
    animation: btm-in-animate 0.5s ease-out forwards;
}


#banner-page .banner-main-img-main{
    opacity: 0;
    animation: text-blur-animate 0.5s ease-in forwards;
}
#banner-page .banner-shape{
    opacity: 0;
    animation: left-in-animate 0.6s ease-out forwards;
}

#banner-page .banner-header{
    opacity: 0;
    animation: text-blur-animate 0.5s ease-out forwards;
    animation-delay: 0.4s;
}
#banner-page .banner-text-main{
    opacity: 0;
    animation: text-blur-animate 0.5s ease-out forwards;
    animation-delay: 0.6s;
}
#banner-page .banner-content-inline-buttons{
    opacity: 0;
    animation: opac-in-animate 0.4s ease-in forwards;
    animation-delay: 0.8s;
}
#banner-page .banner-scroll-indicator{
    opacity: 0;
    animation: opac-in-animate 0.4s ease-in forwards;
    animation-delay: 0.5s;    
}  


.banner-top-page #content-banner-1 .banner-blk-txt,
.banner-top-page #content-banner-1 .icon-blocks{
    opacity: 0;
}
.banner-top-page #content-banner-1 .banner-blk-txt{
    animation: btm-in-animate 0.6s ease-out forwards;
    animation-delay: 0.5s;
}
.banner-top-page #content-banner-1.animate .icon-blocks{
    animation: opac-in-animate 0.6s ease-out forwards;
}
/*
.banner-top-page #content-banner-1.animate .icon-block:nth-child(2) .icon-block-wrap{
    animation-delay: 0.2s;
}
.banner-top-page #content-banner-1.animate .icon-block:nth-child(3) .icon-block-wrap{
    animation-delay: 0.4s;
}
.banner-top-page #content-banner-1.animate .icon-block:nth-child(4) .icon-block-wrap{
    animation-delay: 0.6s;
}
.banner-top-page #content-banner-1.animate .icon-block:nth-child(5) .icon-block-wrap{
    animation-delay: 0.8s;
}
.banner-top-page #content-banner-1.animate .icon-block:nth-child(6) .icon-block-wrap{
    animation-delay: 1.0s;
}
.banner-top-page #content-banner-1.animate .icon-block:nth-child(7) .icon-block-wrap{
    animation-delay: 1.2s;
}
.banner-top-page #content-banner-1.animate .icon-block:nth-child(8) .icon-block-wrap{
    animation-delay: 1.4s;
}
*/


/* ANIMATIONS *****************************/


@keyframes text-blur-animate {
	0% {
        transform: scale(1.1);
        filter: blur(8px);
		opacity: 0;
	}
	100% {
        transform: scale(1.0);
        filter: blur(0px);
		opacity: 1;
	}
}


@keyframes height-animate {
	0% {
/*        height: 0;*/
        transform: scaleY(0);
		opacity: 0;
	}
	100% {
/*        height: 100%;*/
        transform: scaleY(1);
		opacity: 1;
	}
}


@keyframes opac-in-animate {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes opac-out-animate {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

@keyframes btn-animate {
	0%,
	100% {
		transform: scale(1);
	}
	50% {
		transform: scale(1.1);
	}
}
@keyframes pop-in-animate {
	0% {
		opacity: 0;
		transform: scale(0);
	}
	90% {
		opacity: 1;
		transform: scale(1.1);
	}
	100% {
		opacity: 1;
		transform: scale(1);
	}
}
@keyframes title-in-animate {
	0% {
		transform: translateY(100%) rotate(7deg);
		opacity: 0;
	}
    5% {opacity: 1;}
	100% {
		transform: translateY(0%) rotate(0deg);
		opacity: 1;
	}
}
@keyframes top-in-animate {
	0% {
		transform: translateY(-100%);
	}
	100% {
		transform: translateY(0%);
	}
}
@keyframes top-in-opac-animate {
	0% {
		transform: translateY(-100%);
        opacity: 0;
	}
	100% {
        transform: translateY(0%);
        opacity: 1;
	}
}
@keyframes top-in-sm-opac-animate {
	0% {
		transform: translateY(-40%);
        opacity: 0;
	}
	100% {
        transform: translateY(0%);
        opacity: 1;
	}
}
@keyframes btm-in-animate {
	0% {
		transform: translateY(20%);
		opacity: 0;
	}
	100% {
		transform: translateY(0%);
		opacity: 1;
	}
}
@keyframes btm-full-animate {
	0% {
		transform: translateY(100%);
		opacity: 0;
	}
    25% {
		opacity: 1;        
    }
	100% {
		transform: translateY(0%);
		opacity: 1;
	}
}
@keyframes left-in-animate {
	0% {
		transform: translateX(-20%);
		opacity: 0;
	}
	100% {
		transform: translateX(0%);
		opacity: 1;
	}
}
@keyframes right-in-animate {
	0% {
		transform: translateX(20%);
		opacity: 0;
	}
	100% {
		transform: translateX(0%);
		opacity: 1;
	}
}
@keyframes banner-slide-animate {
	0% {
		transform: translateY(10%);
		opacity: 0;
	}
	100% {
		transform: translateY(0%);
		opacity: 1;
	}
}

@keyframes zoomOut {
	0% {
		opacity: 1;
	}
	50% {
		opacity: 0;
		-webkit-transform: scale3d(0.3, 0.3, 0.3);
		transform: scale3d(0.3, 0.3, 0.3);
	}
	to {
		opacity: 0;
	}
}

@keyframes zoomIn {
	0% {
		opacity: 0;
		-webkit-transform: scale3d(0.3, 0.3, 0.3);
		transform: scale3d(0.3, 0.3, 0.3);
	}
	50% {
		opacity: 1;
	}
}

@keyframes bounceInUp {
    from,
    60%,
    75%,
    90%,
    to {
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    from {
        opacity: 0;
        transform: translate3d(0, 500px, 0) scaleY(2);
    }
    60% {
        transform: translate3d(0, -20px, 0) scaleY(0.9);
    }
    75% {
        transform: translate3d(0, 10px, 0) scaleY(0.95);
    }
    90% {
        transform: translate3d(0, -5px, 0) scaleY(0.985);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}


@keyframes bounceInRight {
	from,
	60%,
	75%,
	90%,
	to {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}

	from {
		opacity: 0;
		transform: translate3d(3000px, 0, 0) scaleX(3);
	}

	60% {
		opacity: 1;
		transform: translate3d(-25px, 0, 0) scaleX(1);
	}

	75% {
		transform: translate3d(10px, 0, 0) scaleX(0.98);
	}

	90% {
		transform: translate3d(-5px, 0, 0) scaleX(0.995);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

@keyframes spin { 
    100% { 
        -webkit-transform: rotate(360deg); 
        transform:rotate(360deg); 
    } 
}

/* MOUSE ANIMATIONS *****************************/

@keyframes DrawLine {
  0% {
    stroke-dashOffset: 0;
    stroke-dasharray: 120;
    stroke-opacity: 1;
  }
  22% {
    stroke-dashOffset: 0;
    stroke-dasharray: 120;
    stroke-opacity: 1;
  }
  38% {
    stroke-dashOffset: 125;
    stroke-dasharray: 120;
    stroke-opacity: 1;
  }
  38.1% {
    stroke-dashOffset: 0;
    stroke-dasharray: 120;
    stroke-opacity: 0;
  }
  48% {
    stroke-dashOffset: 0;
    stroke-dasharray: 120;
    stroke-opacity: 1;
  }
  64% {
    stroke-dashOffset: 125;
    stroke-dasharray: 120;
    stroke-opacity: 1;
  }
  64.1% {
    stroke-dashOffset: 0;
    stroke-dasharray: 120;
    stroke-opacity: 0;
  }
  74% {
    stroke-dashOffset: 0;
    stroke-dasharray: 120;
    stroke-opacity: 1;
  }
  90% {
    stroke-opacity: 1;
    stroke-dashOffset: 125;
    stroke-dasharray: 120;
  }
  90.1% {
    stroke-dashOffset: 0;
    stroke-dasharray: 120;
    stroke-opacity: 0;
  }
}
@keyframes DrawLineBack {
  0% {
    stroke-dashOffset: 0;
    stroke-dasharray: 120;
    stroke-opacity: 1;
  }
  22% {
    stroke-dashOffset: 0;
    stroke-dasharray: 120;
    stroke-opacity: 1;
  }
  38% {
    stroke-dashOffset: -114;
    stroke-dasharray: 120;
    stroke-opacity: 1;
  }
  38.1% {
    stroke-dashOffset: 0;
    stroke-dasharray: 120;
    stroke-opacity: 0;
  }
  48% {
    stroke-dashOffset: 0;
    stroke-dasharray: 120;
    stroke-opacity: 1;
  }
  64% {
    stroke-dashOffset: -114;
    stroke-dasharray: 120;
    stroke-opacity: 1;
  }
  64.1% {
    stroke-dashOffset: 0;
    stroke-dasharray: 120;
    stroke-opacity: 0;
  }
  74% {
    stroke-dashOffset: 0;
    stroke-dasharray: 120;
    stroke-opacity: 1;
  }
  90% {
    stroke-opacity: 1;
    stroke-dashOffset: -114;
    stroke-dasharray: 120;
  }
  90.1% {
    stroke-dashOffset: 0;
    stroke-dasharray: 120;
    stroke-opacity: 0;
  }
}
@keyframes nudgeMouse {
  0% {
    transform: translateY(0) translateX(-50%);
  }
  22% {
    transform: translateY(0px) translateX(-50%);
  }
  38% {
    transform: translateY(9px) translateX(-50%);
  }
  48% {
    transform: translateY(0px) translateX(-50%);
  }
  64% {
    transform: translateY(9px) translateX(-50%);
  }
  74% {
    transform: translateY(0px) translateX(-50%);
  }
  90% {
    transform: translateY(9px) translateX(-50%);
  }
}
/*Mouse wheel*/
@keyframes trackBallSlide {
  0% {
    transform: translateY(20px) scale(1);
    opacity: 1;
  }
  22% {
    transform: translateY(20px) scale(1);
    opacity: 1;
  }
  26% {
    transform: translateY(30px) scale(0.9);
    opacity: 1;
  }
  34% {
    transform: translateY(50px) scale(0.1);
    opacity: 0;
  }
  41% {
    transform: translateY(30px) scale(0);
    opacity: 0.3;
  }
  48% {
    transform: translateY(20px) scale(1);
    opacity: 1;
  }
  52% {
    transform: translateY(30px) scale(0.9);
    opacity: 1;
  }
  60% {
    transform: translateY(50px) scale(0.1);
    opacity: 0;
  }
  67% {
    transform: translateY(30px) scale(0);
    opacity: 0.3;
  }
  74% {
    transform: translateY(20px) scale(1);
    opacity: 1;
  }
  78% {
    transform: translateY(30px) scale(0.9);
    opacity: 1;
  }
  86% {
    transform: translateY(50px) scale(0.1);
    opacity: 0;
  }
  93% {
    transform: translateY(30px) scale(0);
    opacity: 0.3;
  }
  100% {
    transform: translateY(20px) scale(1);
    opacity: 1;
  }
}

/* RESPONSIVE STYLES *****************************/

@media (min-width: 2561px) {
    
    body{
        font-size: 16px;
    }
    
	h1 {
		font-size: 72px;
	}
	.container {
		max-width: 1696px;
		padding-right: 48px;
		padding-left: 48px;
	}
    .container-offset{
        width: calc(100% - ((100% - 2016px) / 2 ));
        padding-left: 48px;
        margin-left: auto;
    }
    .container.container-xs {
		max-width: 1184px;
	}
	.animate .full-image-animation {
		left: -16%;
	}
}

@media (min-width: 1921px) and (max-width: 2560px) {
	
    body{
        font-size: 16px;
    }
/*
    h1 {
        font-size: 32px;
    }
    h2 {
        font-size: 32px;
    }
*/
    
    .menu-item-icon{
        font-size: 20px;
    }
    
    
/*
    .banner-header h1,
    #banner-main .banner-header h1{
        font-size: 64px;
    }
*/
    .banner-text p{
	   font-size: 22px;
    }
    .banner-blk-txt p {
        font-size: 16px;
    }
    .intro-txt,
    .intro-txt p{
        font-size: 22px;
    }
    
	.container {
		max-width: 1536px;
		padding-right: 48px;
		padding-left: 48px;
	}
    .container.container-xl {
		max-width: 100%;
		max-width: 1920px;
	}
	.container.container-lg {
		max-width: 1696px;
	}
	.container.container-sm {
		max-width: 1376px;
	}
    .container.container-xs {
		max-width: 1056px;
		max-width: 1184px;
	}
    .container-offset{
        width: calc(100% - ((100% - 1632px) / 2 ));
		padding-left: 48px;
        margin-left: auto;
    }
    .content-banner-center .banner-blk-txt{
        width: 60%;
    }
    
    .content-blocks-small .inline-block-sm{
        min-height: calc(50% - 1px);
    }
/*
    .content-info-list{
        padding-right: var(--xl-pad);       
    }
*/
	.animate .full-image-animation {
		left: -16%;
	}
}

@media (min-width: 1600px) and (max-width: 1920px) {
	.container {
		max-width: 1536px;
		padding-right: 48px;
		padding-left: 48px;
	}
    .container.container-xl {
		max-width: 100%;
	}
	.container.container-lg {
		max-width: 1696px;
	}
	.container.container-sm {
		max-width: 1376px;
	}
    .container.container-xs {
		max-width: 1056px;
	}
    .container-offset{
        width: var(--offset-width-pad);
		padding-left: 48px;
        margin-left: auto;
    }
    .content-blocks-small .inline-block-sm{
        padding-top: 40px;
    }
    .banner-large-text{
        margin-bottom: 24px;
    }
/*
    .content-info-list{
        padding-right: var(--xl-pad);       
    }
*/
    
}

@media (min-width: 1200px) and (max-width: 1599px) {
	:root {
        --med-radius: 10px;
        --lg-radius: 32px; 
		--input-font: 14px;
		--button-font: 14px;
	}

	body {
		font-size: 14px;
	}
	h1 {
		font-size: 32px;
	}
	h2 {
		font-size: 28px;
	}
	h3 {
		font-size: 20px;
	}
	h4 {
		font-size: 16px;
	}
	h5 {
		font-size: 14px;
	}

    .property-card {
        width: calc(25% - 20px);
    }

}

@media (min-width: 1400px) and (max-width: 1599px) {
    
	body {
		font-size: 14px;
	}
	h1 {
		font-size: 28px;
	}
	h2 {
		font-size: 28px;
	}
	h3 {
		font-size: 20px;
	}
	h4 {
		font-size: 18px;
	}
	h5 {
		font-size: 14px;
	}
	
	.container {
		max-width: 1352px;
		padding-right: 48px;
		padding-left: 48px;
	}
    .container.container-xl {
		max-width: 100%;
	}
	.container.container-lg {
		max-width: 100%;
	}
	.container.container-sm {
		max-width: 80%;
		max-width: 1352px;
	}
    .container.container-xs {
		max-width: 1056px;
	}
    
    .banner-blk-red{
        min-height: 480px;
    }

    .property-card {
        width: calc(25% - 20px);
    }
	
}
@media (min-width: 1200px) and (max-width: 1399px) {
	
	.container {
		max-width: 100%;
		padding-right: 48px;
		padding-left: 48px;
	}
    .container.container-xl {
		max-width: 100%;
	}
	.container.container-lg {
		max-width: 100%;
	}
	.container.container-sm {
		max-width: 90%;
	}
    .container.container-xs {
		max-width: 80%;
	}
    
    .intro-txt{
        font-size: 20px;
    }
    
    .nav-wrap{

    }
    .nav-main ul.nav-clean-menu{
        margin-top: 64px;
    }
/*
    .nav-main > ul > li {
        padding: var(--xs-pad) 0;
    }
*/
    .contact-page .content-banner-top h1,
    #banner-main .banner-header h1{
        font-size: 48px;
    }
    .banner-header h1, .banner-header h2{
        font-size: 40px;
    }
    
    #home-banner-1 .icon-blocks-cols{
        margin-top: 192px;
    }
    .content-logo-block{
        padding: 16px;
    }
    .content-logo-block img{
        height: auto;
    }
    
    .banner-blk-sm{
        padding: 0 48px;
    }
    
    .lt-info-block-content{
        font-size: 40px;
    }
    .lt-info-block-content p{
        margin-bottom: 8px;
    }
    
    .blk-bg-light,
    .blk-bg-dark{
        padding: 96px 96px;
    }
    .empty-page-msg{
        width: 50%;
    }

    .property-card {
        width: calc(33.3333% - 20px);
    }
}

@media (min-width: 768px) and (max-width: 1199px) {
	:root {
        --med-radius: 10px;
        --lg-radius: 32px; 
		--input-font: 14px;
		--button-font: 14px;
	}
	body {
		font-size: 14px;
	}
	h1 {
		font-size: 24px;
	}
	h2 {
		font-size: 20px;
		line-height: 1.2;
	}
	h3 {
		font-size: 20px;
	}
	h4 {
		font-size: 14px;
	}
	.container {
		max-width: 100%;
		padding-right: 24px;
		padding-left: 24px;
	}
    .container.container-xl {
		max-width: 100%;
	}
    .container-offset{
        width: calc(100% - 48px);
		padding-left: 0px;
        margin-left: auto;
    }
    .button, a.button, .button:visited, a.button:visited{
        z-index: initial;
    }
	.txt-btn:after{
		font-size: 12px;
	}
	.form-floating > .form-control, 
	.form-floating > .form-control-plaintext,
	.form-floating > label{
		font-size: 14px; 
	}
	.form-select-box .selectric-items li,
	.form-select-box .selectric .label{
		font-size: 14px;
	}
    
    #banner-main{
        height: 100vh;
    }
    #banner-main .banner-main-img,
    .banner-main-img-main{
        height: 100%;
    }
    .banner-top-page #banner-page{
        height: 400px;
    }
    .banner-top-page #content-main{
        margin-top: 400px;
    }
    
    #banner-page .banner-main-img img{
        height: 400px;
    }
    .banner-header h1,
    #banner-main .banner-header h1{
        font-size: 36px;
    }
    .banner-text p{
        font-size: 18px;
    }	
	.banner-text-wrap{
		padding: 0px;
	}
	#banner-main .banner-text-wrap{
		padding: 0px;
	}
    #banner-main .banner-text, 
	.banner-text{
		width: 100%;
	}
	.banner-blk-sm {
		width: 50%;
        padding: 0;
	}
    .banner-content-block{
        width: 50%;
        padding: 24px;
    }
    .bcb-1{
        padding-left: 0px;
    }
    
    .banner-header h2 {
        font-size: 32px;
    }
    
    .title-animation h2{
        display: block;
        line-height: 56px;
    }
    .title-animation-wrap {
        display: inline-flex;
        height: 56px;
        padding-left: 4px;
    }
	.home-page .content-banner-wrap,
	.content-news-wrap{
		padding: 64px 0px;
	}
	.content-banner-wrap{
		padding: 64px 0px;
	}
	.content-banner{
		margin: 0;
	}
	.content-banner-center .banner-blk-txt {
		text-align: center;
		width: 92%;
	}    
    .content-banner-center .highlight-text{
        margin-top: 24px;
    }
    .banner-blk-txt p{
        line-height: 1.4;
    }
    .highlight-text p{
        font-size: 20px;
    }
    
    #home-banner-1{
        padding-bottom: 48px;
    }
    #home-banner-1 .content-banner{
        display: flex;
        flex-direction: column;
    }
    #home-banner-1 .content-banner .banner-blk-txt{
        width: 70%;
    }
    #home-banner-1 .icon-blocks-cols{
        width: 100%;
        margin: 0;
        margin-top: 48px;
    }
    
    
    #listing-banner .content-banner {
        position: initial;
    }
    #listing-banner .listing-blocks{
        padding-bottom: 48px;
    }
    .listing-partner{
        width: 30%;
    }
    .listing-date{
        width: 70%;
        padding: var(--mid-pad) var(--mid-pad) 0 var(--mid-pad);
        white-space: nowrap;
    }
    .listing-content-bottom{
        padding: var(--main-pad) var(--mid-pad) var(--mid-pad) var(--mid-pad);
    }
    .listing-price{
        font-size: 16px;
    }
    .listing-block-description{
        padding: 16px;
    }
    #listing-banner .banner-blk-button {
        position: absolute;
        display: flex;
        flex-direction: row;
        justify-content: center;
        width: 100%;
        right: 0;
        bottom: 64px;
        z-index: 2;
    }
    .listings-header{
        display: flex;
        flex-direction: column;
        margin-bottom: var(--xs-pad);
    }
    
    .home-wrap #light-banner{
        padding-top: 120px;
    }
    .light-banner-block .content-banner,
    .dark-banner-block .content-banner{
        padding: 96px 48px;
    }
    .light-banner-block .content-text-blocks{
        flex-wrap: wrap;
    }
    .light-banner-block .content-text-blk-wrap{
        width: calc(50% - 8px);
        margin-bottom: 4px;
    }
    .content-text-blk{
        flex-grow: 1;
    }
    .content-text-dark-blk{
        margin-top: 0;
    }
    .info-page #dark-banner {
        margin-bottom: 48px;
    }
    
    .icon-blocks-row{
        margin-right: -16px;
    }
    
    #quotes-banner .container-sm{
        padding-top: 48px;
        padding-left: 96px;
        padding-right: 96px;
    }
    .quote-block-text{
        font-size: 20px;
    }
    
    #partner-slider .swiper-wrapper {
        flex-wrap: wrap;
    }
    #partner-slider .swiper-slide {
        padding: 0 2px;
        width: calc(100% / 3);
        margin-bottom: 4px;
    }
    #youtube-banner{
        padding: 48px 48px 96px 48px;
    }
    
    #image-banner{
        margin-bottom: 96px;
    }
    
    .banner-top-page #listing-banner{
        padding: 96px 0px;    
    }
    
	.footer-content{
		flex-wrap: wrap;
		padding: 72px 0;
	}
    .footer-start-content {
        width: 100%;
        text-align: center;
        justify-content: center;
        margin-bottom: 48px;
    }
    .footer-start-content .button {
        align-self: center;
        margin-top: 24px;
    }
	.footer-menu{
		width: 33.3333%;
	}
    
    .empty-page-msg {
		width: 80%;
	}
	.empty-page-title{
		font-size: 24px;
	}

     /* MAP PAGE *****************************/
    .map-page:not(.menu-open) #header .nav-toggle {
        display: none;
    }
    .map-page #content-main {
        padding: 0;
    }
    .main-map-map {
        height: 100dvh;
    }
    .map-search {
        display: none;
    }
    .main-mob-filters {
        position: fixed;
        display: flex;
        width: calc(100% - var(--med-pad));
        top: 0;
        height: 48px;
        z-index: 1;
        margin: var(--mid-pad);
        gap: var(--mid-pad);
    }
    .map-menu-btn.nav-toggle,
    .map-menu-btn {
        position: absolute;
        left: 0;
        top: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        width: var(--lg-pad);
        height: var(--lg-pad);
        font-size: var(--main-font);
        background: transparent;
        color: var(--text-color);
        border: none;
    }
    .map-search-bar {
        width: 100%;
        margin: 0;
        box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.08);
    }
    .map-search-bar .form-control {
        padding-left: var(--lg-pad);
    }
    .map-search-bar .form-control::placeholder {
        color: var(--text-color);
    }
    .map-search-filters button {
        background: var(--white-color);
        border: none;
        outline: none;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 48px;
        height: 48px;
        font-size: var(--main-font);
        color: var(--text-color);
        box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.08);
        opacity: 1;
        transition: all 0.2s ease;
    }
    .map-search-filters button:disabled {
        opacity: .48;
        pointer-events: none;
        transition: all 0.3s ease;
    }
    #map-main-menu .main-filter-wrapper {
        padding: 0;
    }
    #map-main-menu #main-filters {
        position: fixed;
        width: 100vw;
        padding: 0;
    }
    #map-main-menu #main-filters:not(.show-filters) {
        left: -100%;
    }
    #map-main-menu .main-filter-header {
        display: none;
    }
    #map-main-menu .main-filter-title {
        display: flex;
        padding-bottom: var(--mid-pad);
    }
    .main-filter-info {
        padding: 0 var(--mid-pad);
    }
    .main-filter-info .form-select-box {
        margin-bottom: var(--mid-pad);
    }
    .main-filter-chips {
        margin-bottom: var(--main-pad);
    }
    .main-filter-views {
        display: none;
    }
    .map-page .main-filter-buttons {
        display: flex;
    }
    .map-canvas .gm-style .gm-style-iw-c {
        width: 224px;
    }
    .map-canvas .gm-style .gm-style-iw-d {
        padding: 0;
    }
    .house-marker-info {
        flex-direction: column;
    }
    .house-marker-image {
        height: 112px;
        max-height: initial;
        width: 100%;
    }
    .house-marker-image .listing-date {
        padding: var(--sm-pad);
    }
    .house-marker-details {
        flex-direction: column;
        padding: var(--sm-pad);
        width: 100%;
    }
    .house-marker-top {
        flex-direction: column;
    }
    .house-marker-top-col {
        padding-bottom: var(--sm-pad);
    }
    .house-marker-items {
        padding: var(--sm-pad) 0;
        gap: var(--sm-pad);
        row-gap: 6px;
    }
    .house-marker-item {
        width: calc(50% - 6px);
    }
    .house-marker-prices {
        padding-top: var(--sm-pad);
    }
    .house-marker-prices span {
        line-height: 16px;
    }
    .main-house-list {
        padding: var(--mid-pad);
        z-index: 1;
        left: -100%;
        transition: left 0.2s ease;
        z-index: 99;
    }
    .main-house-list.show {
        left: 0;
        transition: left 0.4s ease-out;
    }
    .main-house-list.no-animate {
        left: 0;
        opacity: 1;
        pointer-events: auto;
        transition: none;
    }
    .main-house-list .content-page-title::after {
        display: none;
    }
    .main-house-list h1 {
        font-size: var(--lg-font);   
    }
    .house-filters {
        display: flex;
        flex-direction: row;
        gap: var(--mid-pad);
        margin-bottom: var(--mid-pad);
    }
    .listings-header .map-search-bar{
        display: none;
    }
    .house-filters .map-search-bar {
        box-shadow: none;
    }
    .house-filters .map-search-bar .form-control {
        background: var(--bg-color);
    }
    .map-list-btn-mob,
    .map-view-btn-mob{
        position: fixed;
        bottom: 0;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: var(--mid-pad);
        pointer-events: none;
    }
    .map-view-btn-mob{
        position: absolute;
        left: 0;
    }
    .map-list-btn-mob button {
        background: var(--white-color);
        box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.08);
        color: var(--text-color);
        pointer-events: all;
    }    
    .map-list-btn-mob .button:hover, 
    .map-list-btn-mob .button:active, 
    .map-list-btn-mob .button:focus {
        color: var(--text-color);
        background: var(--white-color);
        transition: none;
    }    
    .map-view-btn-mob button{
        box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.08);
        pointer-events: all;
    }
    .map-view-btn-mob .button:hover, 
    .map-view-btn-mob .button:active, 
    .map-view-btn-mob .button:focus {
        color: var(--white-color);
        background: var(--sub-color);
        transition: none;
    }  
    .property-cards {
        gap: 0;
    }
    .property-card {
        width: 100%;
        flex-direction: row;
        gap: var(--sm-pad);
        border-bottom: 1px solid var(--border-color);
        padding: var(--mid-pad) 0;
    }
    .property-card:first-child {
        padding-top: 0;
    }
    .property-card-image {
        width: 20%;
        height: auto;
    }
    .property-card-image .listing-date {
        padding: var(--sm-pad);
        display: none;
    }
    .property-card-details {
        width: 80%;
        padding: 0;
    }
    .property-card-title {
        line-height: 1.2;
    }
    .property-card-items {
        margin-bottom: var(--xs-pad);
    }
    .property-card-item div {
        width: 16px;
        height: 16px;
        font-size: 10px;
    }
    .property-card-item span {
        font-size: var(--sm-font);
    }
    .contact-banner .banner-blk-txt br{
        display: none;
    }
    
    .sub-page.property-page #content-wrapper {
         padding-top: 120px; 
    }
    
    #property-facilities .content-image-blocks{
        padding: 0 24px;
    }
    
    #property-top-info{
        margin-bottom: 48px;
    }
    #property-top.sticky-padding {
        padding-top: 0px; 
    }
    
    #property-top-info.sticky-bar{
        position: relative;
        top: initial;
        left: initial;
        background: none;
        padding: 0;
        animation: none;
        box-shadow: none;
        margin-bottom: 48px;
    }
    #property-top-info .property-top-title,
    #property-top-info.sticky-bar .property-top-title{
        margin-bottom: 24px;
    }
    #property-top-info.sticky-bar .property-title h1 {
        font-size: 32px;
        line-height: 1.1;
    }
    .property-title {
        display: flex;
        flex-direction: row;
        width: 100%;
        margin: 0;
    }
    #property-top-info.sticky-bar .property-title h1:before{
        display: block;
    }
    .property-top-wrapper{
        position: fixed;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        bottom: 0px ;
        width: 100%;
        left: 0;
        padding: 16px 24px;
        margin: 0;
        background: var(--white-color);
        box-shadow: 0 -4px 8px 0 rgba(0, 0, 0, 0.08);
/*        animation: opac-in-animate 0.2s ease-in forwards;*/
        z-index: 3;
    }
    .property-top-button{
    }
    .property-top-button{
        display: flex;
        align-items: flex-end;
        justify-content: flex-end;
        width: 58%;
    }
    .property-top-button .button{
        margin-left: var(--mid-pad); 
        min-width: initial;
    }

    .property-select-view .form-select-box .selectric{
        border: 1px solid var(--dark-border-color);
        min-width: 160px;
    }
    .property-select-view .form-select-box .selectric-items{
        border: 1px solid var(--dark-border-color);
        border-top: none;
    }
    .property-select-view .form-select-box .selectric .label{
        font-weight: 600;
    }
    .property-title-responsive{
        display: flex;
        flex-direction: column;
        justify-content: center;
        width: 42%;
        height: 48px;
        line-height: 48px;
        margin: 0;
        padding-right: 16px;
    }
    .property-title-responsive h2{
        margin: 0;
        font-size: 18px;
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
/*
    .property-top-info:not(.sticky-bar) .property-top-button{
        width: 100%;
    }
*/
    

}


/*For Tablets*/

@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
	.light-banner-block .content-banner, .dark-banner-block .content-banner {
        padding: 72px 24px;
    }
    
/*
    .contact-page .content-left, 
    .contact-page .content-right, 
    .contact-banner .content-left, 
*/
    
    .contact-banner .content-main-wrapper{
        flex-direction: column;
    }
    .contact-banner .content-left{
        width: 100%;
    }
    .contact-banner .content-right{
        padding-left: 0px;
        width: 100%;
    }
    .contact-banner .content-left .banner-blk-txt{
        width: 90%;
        margin-bottom: 48px;
    }
    
    #contact-info {
        display: none;
        margin-top: 40px;
    }
    .info-blocks{
        flex-direction: column;
    }
    .info-blocks .info-block-list,
    .info-blocks .info-block-list:first-child{
        width: 100%;
        padding: 0 0 24px 0px;
        border: none;
    }
    
    #property-icons .icon-blocks{
        padding: 0 48px;
    }
    #property-details .content-banner {
        padding: 0 24px;
        padding-top: var(--lg-pad);
    }
    .property-page #location-banner .blk-bg-light{
        padding: 72px 64px;
    }
    .property-page .content-image-blocks{
        padding: 0 24px;
    }
    
    .content-sticky-footer {
        display: flex;
        justify-content: space-between;
    }
    
    .category-wrapper{
    	flex-direction: column;	
        margin-bottom: 48px;
    }
    .category-view{
        width: 100%;
        padding: 0;
    }
    .category-right{
        width: 100%;
        padding: 0;
    }
    
    .property-mobile-button{
        display: flex;
        flex-direction: row;
        width: 100%;
        padding: 0 48px;
        margin-top: 32px;
        opacity: 0;
                animation: opac-in-animate 0.7s ease forwards;
    }
    .property-mobile-button .button{
        margin-right: 16px;    
    }
    .property-title-responsive{
        width: 60%;
    }
    .property-top-button{
        width: 40%;
    }
	.property-top-button .hide-mob{
        display: none;
    }
}

/* MOBILE */

@media (max-width: 767px) {
	:root {
        --med-radius: 10px;
        --lg-radius: 32px;        
		--input-font: 14px;
		--button-font: 14px;
		--main-shadow: 0px 4px 16px rgba(0, 0, 0, 0.16);
	}

	html {
		scroll-behavior: initial !important;
	}
	body {
		font-size: 14px;
	}
    
	.container {
		max-width: 100%;
		padding-right: 16px;
		padding-left: 16px;
	}
    .container.container-xl {
		max-width: 100%;
	}
    .container-offset{
        width: calc(100% - 48px);
		padding-left: 48px;
        margin-left: auto;
        width: 100%;
        padding: 0px;
        padding-left: 16px;
        margin: 0;
    }
    
	img {
		vertical-align: top;
	}

	h1 {
		font-size: 24px;
	}
	h2 {
		font-size: 18px;
        line-height: 1.2;
	}
	h3 {
		font-size: 18px;
        line-height: 1.2;
	}
	h4 {
		font-size: 14px;
	}
    .intro-txt{
        font-size: 18px;
    }
	
	.button, a.button{
		padding: 12px 16px;
	}
    .button, a.button, .button:visited, a.button:visited{
        z-index: initial;
    }
    .button.l-btn, .l-btn:visited, a.button.l-btn, a.button.l-btn:visited{
        min-width: initial;
    }
    .button span{
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .a-btn, a.a-btn, .a-btn:visited, a.a-btn:visited{
        padding: var(--sm-pad) 0;
        padding: 0;
    }
    .a-btn span{
        margin-right: 8px;
    }
    .button.btn-icon, a.button.btn-icon {
        padding: var(--sm-pad) var(--main-pad) var(--sm-pad) 16px;
    }
	.txt-btn{
		padding-right: 24px;
	}
	.txt-btn:after{
		width: 24px;
		font-size: 12px;
		padding: 0px 8px 0px 8px;
	}
	.txt-btn:hover:after {
		padding: 0px 8px 0px 8px;
	}
	.txt-btn span{
        font-size: 12px;
		font-weight: 600;
	}
	.form-floating > .form-control, 
	.form-floating > .form-control-plaintext,
	.form-floating > label{
		font-size: 14px; 
	}
	.form-select-box .selectric .label{
		font-size: 14px;
	}
    .inputfile + label{
        font-size: 14px;
    }
    .form-cols:not(.form-mob-cols){
		flex-direction: column;
		margin: 0;
	}
	.form-cols:not(.form-mob-cols) .form-col{
		width: 100%;
		margin: 0;
		margin-bottom: 24px;
	}
	.ch-btn label,
    .radio-label {
		font-size: 12px;
	}
	.i-btn-lg{
		font-size: 28px;
	}
    .hide-mob{
        display: none;    
    }
	
	#main-wrapper{
/*		padding-top: 16px;*/
	}
	
	#outer-wrapper{
/*		padding-top: 56px;*/
	}
    #outer-wrapper:has(.content-sticky-footer.show.animate){
		padding-bottom: 80px;
	}
	.sub-page #content-wrapper {
		padding-top: 0;
	}
    .sub-page #content-wrapper.page-wrap {
        padding-top: 72px;
    }
    
    .sub-page #content-wrapper.category-wrap{
        
    }
	
	#content-main{
		padding: 24px 0px 0px 0px;
		padding: 16px 0px 0px 0px;
        min-height: initial;
	}
    #banner-wrapper + #content-main{
		padding: 24px 0px 0px 0px;
    }
	
	#banner-main{
		height: 100dvh;
        height: var(--doc-height);
	}
    #banner-main-slider::before {
        background: linear-gradient(180deg, rgba(47, 44, 42, 0.48) 0%, rgba(47, 44, 42, 0) 100%);
        width: 100%;
        height: 72px;
    }
    #banner-main-slider::after {
        position: absolute;
        content: '';
        top: 0;
        left: 0;
        background: linear-gradient(90deg, rgba(47, 44, 42, 0.48) 0%, rgba(47, 44, 42, 0) 100%);
        width: 32%;
        height: 100%;
        z-index: 1;
        pointer-events: none;
    }
	.banner-text-wrap{
		justify-content: center;
		padding: 32px 0px;
	} 

    #banner-main-content .container{
        padding: 0;    
    }
    .banner-main-content{
        flex-direction: column;
    }
    #banner-main-pagination{
        bottom: 160px;
        padding: 24px 16px;
    }    
    .banner-content-block{
        padding: 16px;
    }
    .banner-content-block h2{
        font-size: 14px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    #banner-main-content .a-btn, 
    #banner-main-content a.a-btn{
        font-weight: 300;
    }
    
    .banner-content-main-link{
        display: none;
    }
    .banner-content-mobile-link{
        position: relative;
        display: flex;        
        text-decoration: none;
    }
    .mobile-link-icon{
        position: relative;
        display: flex;
        flex-direction: column;
        width: 24px;
        height: 24px;
        line-height: 24px;
        justify-content: center;
        font-size: 16px;
    }
    .mobile-link-content{
        position: relative;
        display: flex;
        flex-direction: column;
        padding-left: 16px;
        width: calc(100% - 24px);
    }
    
    .banner-content-mobile-link .wa-btn{
        padding: 0;
        height: initial;
    }
    .banner-content-mobile-link .wa-btn i{
        font-size: 18px;
    }
    
    .bcb-1{
        width: 100%;
    }
    .banner-content-button{
        margin-bottom: 0;
    }
    .bcb-1 .button.btn-icon{
        display: none;    
    }
    .bcb-2{
        width: 80%;
    }
    .bcb-2 .bcb-bg{
        background:var(--main-color); 
    }
    .bcb-2 .banner-content-mobile-link h3,
    .bcb-2 .mobile-link-icon{
        color:var(--white-color); 
    }
    .mobile-link-content .content-inline-title{
        padding-top: 4px;
        margin-bottom: 4px;
    }
    .banner-content-block p{
        display: none;
    }
    .banner-content-block h2{
        margin-bottom: 0px;
    }
    #banner-wrapper .bcb-bg,
    #banner-wrapper .banner-content-block {
        opacity: 0;
        transform: translateY(0%) translateX(-100%);
    }
    #banner-wrapper:has(.animate) .bcb-bg,
    #banner-wrapper:has(.animate) .banner-content-block {
        opacity: 1;
        transform: translateY(0%) translateX(0%);
        transition: transform 0.6s ease-out, opacity 0.2s ease-out;
        transition-delay: 0.8s;
    }
    #banner-wrapper:has(.animate) .banner-content-block.bcb-2 {
        transition-delay: 1s;
    }
    .banner-main-float-button{
        position: absolute;
        right: 16px;
        top: -72px;
        opacity: 0;
    }
    .yt-btn{
        padding: 8px 20px 8px 16px;
    }


    
	.sub-page .banner-text,
	.banner-text{
		width: 100%;
		text-align: left;
	}
    #banner-main .banner-text{
        width: 100%;
    }
    .banner-header{
        margin-bottom: 12px;
    }
    .banner-header h1{
        font-size: 26px;
        font-weight: 600;
        margin-bottom: 0px;
    }
    #banner-main .banner-header{
        padding-right: 0;
        margin-bottom: 0;
    }
    #banner-main .banner-header h1{
        font-weight: 600;
        font-size: 32px;
        margin-bottom: 8px;        
    }
    
	.banner-text p{
        font-size: 16px;
	}
	.banner-main-wrapper{
		justify-content: flex-end;		
	}
    
    #banner-page.banner-container {
        margin-bottom: 24px;
    }
    #banner-page .banner-text-main{
        display: none;
    }
    .banner-page .banner-text{
        width: 100%;
        background: linear-gradient(209deg, rgba(38, 38, 38, 0.00) -18.76%, #2A2624 78.54%);
        backdrop-filter: blur(8px);
    }
    #banner-page .banner-content-inline-buttons{
        padding: 16px;
    }
    #banner-page .banner-content-inline-buttons .l-btn.white-btn{
            display: none;
    }
    .banner-scroll-indicator{
        padding: 24px 16px;
        width: 50%;
    }
    
    .banner-main-img{
        height: 70dvh;
    }
    .banner-top-page #banner-page .banner-main-img{
        height:100%;
    }
    .banner-container .banner-main-img{
        height: initial;
        aspect-ratio: 2/1;
    }
    .banner-main-img-main{
        position: relative;
        display: flex;
        flex-direction: column;
        min-height: initial;
        height: 100%;
        width: 100%;
        overflow: hidden;
    }
    .banner-main-img-main img{        
        object-fit: cover;
        object-position: center top;
        width: auto;
        height: auto;
        min-width: 100%;
        min-height: 100%;
    }
    .banner-top-page .banner-main-img-main img{
        object-position: 58% 50%;
    }
    
    .banner-shape {
        display: block;
        position: absolute;
        bottom: 0;
        left: -10%;
        height: 96px;
        width: 105%;
        border-radius: 0;
        border-top-right-radius: 37px;
        background: rgba(255, 255, 255, 0.08);
        backdrop-filter: blur(8px);
        transform: skewX(30deg);
        z-index: 1;
        overflow: hidden;
        
        display: none;
    }
    .banner-shape::before{
        display: none;
    }
    
    .banner-page .banner-text-wrap{
        justify-content: flex-end;
        padding: 0;
    }
    .banner-page .banner-text-wrap .container{
        position: relative;
        padding: 0;
    }    
    .banner-page .banner-text{
        padding: 0;
    }
    .banner-page .banner-header{
        margin: 0;
        padding: 16px;
    }
    .banner-page .banner-header h2{
        font-size: 22px;
        line-height: 28px;
        margin: 0;
        display: -webkit-box;
        overflow: hidden;
        text-overflow: ellipsis;	
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        line-clamp: 2;
    }
    .banner-text-main-wrap{
        overflow: hidden;
    }
    .banner-text-main.show-text .banner-text-main-wrap{
        
    }
    
    .banner-top-page .banner-text-wrap .banner-content-inline-buttons .button:first-child{
        display: none;
    }
    
	.content-main-wrapper{
		margin: 0;
		flex-direction: column;
	}
	.content-left + .content-main {
		width: 100%;
	}
	.content-main {
		width: 100%;
		padding: 0;
		order: 1;
		margin-bottom: 24px;
	}
	.content-left {
		width: 100%;
		padding: 0;
		order: 2;
	}
    
    .contact-page.sub-page #content-wrapper,
    .info-page.sub-page #content-wrapper{
        padding-bottom: 0; 
    }

    
	.content-banner-wrap{
		padding: 64px 0px;
	}
	.home-page .content-banner-wrap{
		padding: 96px 0px;
	}   
    
	.content-banner{
		flex-direction: column;
	}
	.content-banner-center .banner-blk-txt{
		margin-bottom: 24px;
	}
    .content-banner-center .highlight-text {
        margin-top: 0px;
        margin-bottom: 24px;
    }
    .content-banner-center .banner-blk-txt, 
    .content-banner-center .banner-blk-txt.single-title {
        text-align: center;
        text-align: left;
    }
    .content-banner-center > .content-banner-title{
        text-align: left;
    }
    .content-banner-title{
        margin-bottom: 8px;    
    }
    .highlight-text p {
        font-size: 16px;
    }
    .content-banner-wrap-top{
		padding-bottom: 48px;
	}
	.content-banner{
		margin: 0;
	}
	.banner-blk-txt, .banner-blk-img{
		text-align: left;
		width: 100%;
		padding: 0;
	}
	.banner-blk-img{
		order: 2;	
	}
	.banner-txt-right .banner-blk-txt {
		padding-left: 0px;
	}
	.banner-txt-left .banner-blk-txt{
		padding-right: 0px;
	}
	.content-banner-center .banner-blk-txt{
		text-align: left;
		text-align: center;
		width: 100%;
        margin-bottom: 24px;
	}
	.center-blk-img{
		width: 90%;
	}
	.content-banner-center .banner-blk-txt,
	.content-banner-center .banner-blk-txt.single-title{
		text-align: left;
        text-align: center;
	}
	.content-banner-center .banner-blk-txt .button{
		margin-top: var(--main-pad);
		margin-top: 0;
	}
    .content-banner-center .blk-txt-left .txt-btn{
        margin-top: 0;
    }
	.banner-blk-txt.single-button{
		margin: var(--main-pad) 0 0 0 ;
	}
    .banner-blk-txt .button {
        margin-top:0;
    }
    .banner-blk-txt .banner-content-inline-buttons{
/*        flex-direction: column;*/
/*        margin: var(--main-pad) 0 0 0 ;*/
        margin: 0 0 var(--main-pad) 0 ;
    }
    .banner-blk-txt ul + .banner-content-inline-buttons{
        margin-top: 24px;
    }
    .banner-blk-offset{
        width: 100%;
        margin-left: 0;
    }
    .content-banner-medium {
        padding: 0px 0;
    }
    .content-banner-medium .banner-blk-txt{
        padding: 72px 0px;
    }
    .content-banner-medium .banner-blk-img{
        padding: 0px 0px 72px 0px;
    }
    .content-banner-medium .banner-blk-txt{
        text-align: center;
    }
    .content-banner-medium .button{
        align-self: center;
        margin: 0 auto;
    }
    .content-banner.content-banner-margin{
        margin-bottom: 48px;
    }
    .content-banner-wrap.full-image-banner{
        padding: 72% 0 16px 0px;
    }
    
        
    #home-banner-1 .container{
        padding-right: 16px;
    }
    #home-banner-1 .icon-blocks-cols{
        width: 100%;
        width: calc(100% + 24px);
        margin: 24px -12px 24px -12px;
        flex-direction: column;
    }
    .icon-blocks-cols .icon-blocks-col{
        width: 100%;
        padding: 0;
    }
    .icon-blocks-col .icon-block-inline {
        width: 100%;
        padding: 12px;
        margin-bottom: 4px;
    }
    .icon-block-inline .icon-block-title{
        margin: 0;
    }
    .icon-block-inline .icon-block-title div,
    .icon-block-inline .icon-block-title h4{
        line-height: 40px;
        margin: 0;
    }
    #home-banner-1.animate #ib-3.icon-block-inline {
        animation-delay: 0.4s;
    }
    #home-banner-1.animate #ib-1.icon-block-inline {
        animation-delay: 0.5s;
    }
    #home-banner-1.animate #ib-4.icon-block-inline {
        animation-delay: 0.6s;
    }
    #home-banner-1.animate #ib-2.icon-block-inline {
        animation-delay: 0.7s;
    }
    #home-banner-1.animate #ib-5.icon-block-inline {
        animation-delay: 0.8s;
    }
    
    #content-banner-1.content-banner-wrap{
        padding: 48px 0px;
    } 	
    
    #light-banner .content-banner{
        padding-bottom: 48px;
    }
    
    .light-banner-block,
    .dark-banner-block{    
        margin-top: 64px;
    }
    .light-banner-block .container,
    .dark-banner-block .container{
        padding: 0;    
    }
    
    .light-banner-block .content-banner,
    .dark-banner-block .content-banner{
        padding: 120px 16px 48px 16px;
    }
    .light-banner-block .banner-blk-img,
    .dark-banner-block .banner-blk-img{
        position: absolute;
        top: 0;
        right: 16px;
        width: 40%;
    }
    #light-banner .banner-fade-img, 
    #dark-banner .banner-fade-img {
        margin-top: -64px;
    }
    
    #light-banner .content-text-blocks, 
    #dark-banner .content-text-blocks{
        margin: 0;
        margin-top: 24px;
        padding: 0;
    }
      
    .icon-block-content{
		padding: 0px;
	}
	.icon-block-icon{
		font-size: 16px;
	}    
    .icon-block > a {
        height: 100%;    
    }    
	.content-block-wrap .icon-block{
		margin-top: 0;
	}
    .content-banner + .icon-blocks{
        margin-top: 48px;
    }
    .icon-blocks{
        flex-direction: column;
    }    
    .icon-block-bg{
        border-radius: 32px 10px;
    }
    .icon-block-title{
        margin-bottom: 8px;
    }
    .icon-blocks-row.ib4 .icon-block-title{
        margin-bottom: 0px;
    }
    .icon-block-icon{
        width: 40px;
        height: 40px; 
    }
    .icon-blocks .icon-block {
        width: 100%;
    }
    
    .icon-blocks-full .icon-block-icon{
        position: absolute;
        top: 24px;
        left: 24px;
    }
    .icon-blocks-full .icon-block-content{
        margin-top: 0;
    }
    .icon-blocks-full .icon-block-title{
        padding-left: 56px;
        margin-top: 8px;
    }
    .icon-blocks-full .icon-block-title div,
    .icon-blocks-full .icon-block-title h4{
        margin: 0;
        line-height: 24px;
    }
    .icon-blocks-full .icon-block-text{
        display: none;
    }
    .icon-blocks-full .txt-btn span {
        opacity: 1;
    }
    .icon-blocks-full .txt-btn div{
        left: calc(100% - var(--main-pad));
    }
    
    .icon-blocks.ib4{
        flex-direction: row;
        flex-wrap: wrap;
    }
    
    .icon-blocks.ib4 .icon-block{
        width: 50%;
        width: calc(50% - 4px);
    }
    .icon-blocks.ib4 .icon-block-wrap{
        flex-direction: row;
        padding: 0px;
    }
    .icon-blocks.ib4 .icon-block-icon {
        width: 48px;
        height: 48px;
        background: transparent;
    }
    .icon-blocks.ib4 .icon-block-content{
        margin: 0;
        padding: 0px;
        width: calc(100% - 48px);
        justify-content: center;
    }
    .icon-blocks.ib4 .icon-block-content h4{
        line-height: 16px;
        font-size: 12px;
        margin: 0;
    }
    
    .content-logo-block{
        padding: 8px 0px;
    }
    .content-logo-block img{
        height: auto;
    }
    #partner-slider .swiper-wrapper{
        flex-wrap: wrap;
    }
    #partner-slider .swiper-slide{
        padding: 0 2px;
        width: calc(100% / 3);
        margin-bottom: 4px;
    }
    #partners-banner.animate .swiper-slide .content-logo-block{
        opacity: 1;
        animation: none!important;
    }
    
    .content-text-blk-wrap,
    .content-text-blocks-3 .content-text-blk-wrap{
        width: 100%;
        margin-bottom: 8px;
    }
    
    .content-text-dark-blk{
        margin-top: 0;
    }
    
	.content-image-blocks{
        flex-wrap: wrap;
		margin: 0 -4px;
	}
    #property-facilities .content-img-block-wrap,
	.content-img-block-wrap {
        width: 50%;
		padding: 0 4px;
		margin-bottom: 16px;
	}
    
    .content-img-block{
        width: 100%;
    }
    
    .content-img-block-title{
        font-size: 12px;
    }
    
    #content-banner-1.content-banner-wrap-sm{
        padding-bottom: 24px;
    }
    
    #content-banner-2{
        padding-top: 24px;
    }
    #content-banner-1 + #content-banner-2 {
        padding-top: 0;
    }
   
    .content-text-blocks{
        flex-direction: column;
    }
    .content-text-blk{
        width: 100%;
        padding: 0;
    }
    .text-blk-title{
        padding:12px 32px 12px 16px;
    }
    .text-blk-title:after {
		position: absolute;
		display: inline-block;
		content: "\f078";
		right: 12px;
		top: 12px;
		height: 24px;
		width: 24px;
		line-height: 24px;
		font-size: 14px;
		color: var(--text-color);
		vertical-align: middle;
		text-align: center;
		font-style:normal;
		font-family: "Font Awesome 6 Pro";
		font-weight: 300;
		transform: rotate(0deg);
		transition: all 0.2s ease;
	}
    .dark-banner-block .content-text-blk .text-blk-title:after,
    .content-text-dark-blk .text-blk-title:after {
        color: rgba(255, 255, 255, 0.64);
    }
	.text-blk-open.content-text-blk .text-blk-title:after{
		transform: rotate(-180deg);
		transition: all .3s ease;
	}
    .text-blk-title h4{
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        margin: 0;
        font-size: 16px;
        line-height: 24px;
    }
    .text-blk-text{
        display: none;
        padding: 0px 16px 16px 16px;
    }
    
    .content-banner-title.extra-margin {
        margin-bottom: 16px;
    }

	.banner-blk-inline-title{
		justify-content: center;
		flex-direction: column;
		padding: 0px;
    	margin-bottom: 24px;
	}
	.banner-blk-inline-title .content-banner-title{
		text-align: center;
		margin-bottom: 16px;
	}
	.banner-blk-inline-title .content-banner-title h2{
		line-height: 1.2;
	}
	.banner-blk-inline-title .button{
		margin: 0 auto;
	}
    
    .read-more-wrap{
        position: relative;
        display: flex;
        flex-direction: column;
        padding-bottom: 24px;
        margin-bottom: 24px;
    }
    .read-more-open.read-more-wrap,
    .content-list-blk-items .read-more-wrap,
    .content-text-blk-big .read-more-wrap{  
        margin-bottom: 0px;
    }
    .read-more-text{
        max-height: 116px;
        overflow: hidden;
    }
    .content-list-blk-items .read-more-text{
        max-height: 120px;
    }
    .content-text-blk-big .read-more-text{
        max-height: 72px;
    }
    .content-text-blk-big .read-more-open.read-more-wrap{
        padding-bottom: 0;
    }
    .read-more-open .read-more-text{
        max-height: 800px;
        transition: max-height 0.8s ease-out;
    }
    .read-more-btn{
        position: absolute;
        display: flex;
        justify-content: flex-start;
        bottom: 0px;
        width: 100%;
        text-align: left;
        font-weight: 600;
        color: var(--sub-color);
    }
    .content-text-dark-blk .read-more-btn{
        color: var(--white-color);
    }
    .read-more-btn i{
        display: inline-flex;
        justify-content: center;
        text-align: center;
        width: 24px;
        height: 24px;
        line-height: 24px;
        margin-left: 2px;
    }
    .content-banner-center .read-more-btn,
    .content-list-blk-items .read-more-btn{
        justify-content: center;
        text-align: center;
    }
    .read-more-open .read-more-btn{
        display: none;    
    }
	
	.content-blocks{
		flex-direction: column;
		margin: 0;
	}
    .content-blocks-column{
    	width: 100%;  
        padding: 0;
    }
    
    #content-banner-blocks{
        padding-top: 0;
        padding-bottom: 0px;
    }
    #content-banner-blocks .content-blocks-wrap{
        flex-direction: column;
        padding: 0px 16px 0px 0px;
    }
    #content-banner-blocks .content-blocks-column{
        position: initial;
        width: 100%;    
        padding: 0;
    }    
    #content-banner-blocks .content-blocks-wrap .content-blocks-column:nth-child(1){
        order: 2;    
    }
    #content-banner-blocks .bi-1{
        border-radius: 32px 10px 0 0;
        margin-bottom: 16px;
    }
	.content-block-wrap{
		width: 100%;
		padding: 0;
		margin-bottom: 24px;
	}
    .banner-inline-block h2{
        font-size: 18px;
    }
    .banner-inline-txt{
        padding: 24px;
    }
    .banner-inline-img{
        margin-top: 16px;    
    }
    
    #location-banner .blk-bg-light,
    #location-banner .blk-bg-dark{
        opacity: 0;
        transform: scale(1);
    }
    #location-banner.animate .blk-bg-light,
    #location-banner.animate .blk-bg-dark{
        opacity: 1;
        transform: scale(1);
        transform-origin: 50% 100%;
        transition: all 0.8s ease-out;
    }
    #location-banner.animate .blk-bg-dark{
        transition-delay: 0.2s;
    }
    
    .property-page #location-banner .blk-bg-light{
        padding: 48px 24px;
    }
    
    
    .content-info-list{
        margin-top: 0px;
        padding: 24px;
        margin-left: 0;
    }
    .content-info-list-icon{
        width: 48px;
        height: 48px;
        font-size: 18px;
    }
    .content-info-list-content {
        width: calc(100% - 48px);
        padding-left: 16px;
    }
    .content-info-list-title{
        padding: 4px 0px;
        padding: 0;
        width: 55%;
    }
    .content-info-list-title h4{
        font-size: 14px;
        line-height: 24px;
    }
    .content-info-list-text{
        width: 35%;
/*        font-size: 12px;*/
    }
    
    .content-info-list .read-more-btn{
        display: flex;
        position: relative;
        line-height: 24px;
    }
    .read-more-btn span{
        font-size: 14px;    
    }
    .animate .content-info-list-item{
        opacity: 1;
        animation: none;
    }   

    .content-info-list{
        z-index: initial;
    }

    
    .content-popover-content{
        position: relative;
        display: flex;
        flex-direction: column;
        padding: var(--main-pad) 0;
        width: 100%;
    }
    .content-popover-text p{
        margin: 0;
    }

	.content-block{
		padding: 16px;
		border-radius: 28px;
	}    
    .content-blocks-small .content-blocks-column{
        
    }
    .content-blocks-small .cbc-sm{
        width: 100%;
    }
    .content-blocks-small .banner-inline-block {
        margin-right: 0px;
        padding: 24px;
    }
    .content-blocks-small .banner-inline-block p{
        font-size: 14px;    
    }
    .banner-inline-txt .txt-btn{
        margin-top: 0;
    }    
    #content-banner-blocks .bi-1,
    #content-banner-blocks .bi-2 {
        min-height: initial;
    }    
    #content-banner-blocks .content-blocks-small .bi-1{
        border-radius: 32px 0 0 0;
        height: 240px;
        height: 304px;
        margin-bottom: 162px;
    }    
    .content-blocks-small .bi-2{
        border-radius: 0px 0px 0px 32px;
        margin-right: 1px;
    }
    .inline-block-sm h3{
        font-size: 14px;
    }
    
    .content-blocks-small .cbc-lg{
        position: absolute;
        top: 305px;
        right: 0;
        width: 100%;
    }
    .content-blocks-wrap .banner-img-full span{
        width: 100%;
    }
    .content-blocks-wrap .banner-img-full img{
        height: 160px;
    }
    .content-sticky-footer {
        display: flex;
        justify-content: space-between;
    }

    .swiper-controls{
        width: 100%;
    }
    
    #quotes-banner .content-banner-center .banner-blk-txt{
        text-align: left;
        justify-content: flex-start;
    }
    #quotes-banner .content-banner-center .content-banner-title:after{
        left: 0;
    }
    .quote-block-score{
        margin-bottom: 16px;
    }
    
    #quotes-slider .swiper-controls{
        width: 100%;
    }
    #quotes-banner .button{
        display: none;
    }
    #quotes-banner .banner-blk-full{
        padding: 0;
        margin-bottom: 24px;
    }
    #quotes-slider{
        overflow: initial;
        overflow: hidden;
        padding-bottom: 48px;
    }
    .quote-block-text{
        font-size: 18px;
    }
/*
    .home-wrap #quotes-banner .swiper-slide .quote-block{
        opacity: 1!important;
        animation: none!important;
    }
*/    
    
    #youtube-banner .content-banner{
        
        background: var(--main-color);
        background: url(../images/matricardi-youtube-bg.webp) var(--main-color) right top no-repeat;
        background-size: 140%;
        color: var(--white-color);
        padding: 72px 16px 24px 16px;
        
    }
    #youtube-banner .content-banner .banner-blk-txt .content-banner-title{
        padding-right: 40%;
    }
    #youtube-banner .content-banner .banner-blk-img{
        position: absolute;
        top: 0;
        right: 0px;
        width: 40%;
    }
    #youtube-banner .content-banner .banner-blk-img img{
        height: auto;
        width: auto;
    }
    
    #youtube-videos{
        padding: 0;
        margin-top: 48px;
        flex-wrap: wrap;
        margin-left: -2px;
        margin-right: -2px;
        margin-bottom: 4px;
    }
    .youtube-video-blk{
        margin: 0 2px;
        width: calc(50% - 4px);
    }
    .youtube-video-blk:last-child{
        display: none;    
    }

    
    #listing-banner .content-banner{
        position: initial;
    }
    #listing-banner .banner-blk-button {
        position: absolute;
        display: flex;
        flex-direction: row;
        justify-content: center;
        width: 100%;
        right: 0;
        bottom:64px;
        z-index:2;
    }
    #listing-banner .content-banner-text{
        display: none;
    }

    #listing-banner .listing-blocks{
        flex-direction: column;
        padding-bottom: 48px;
    }
    .listing-block-wrap{
        width: 100%;
    }
    .listing-date{
        padding-left: 0px;
    }
    .listing-date span{
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: 12px;
    }
    .listing-price{
        font-size: 16px;
    }
    .listing-block-description{
        padding: 16px;
    }
    .listing-block-description p{
        display: none;
    }
    .listings-header{
        display: flex;
        flex-direction: column;
        margin-bottom: 0px;
    }
    .listings-header .content-page-title{
        margin-bottom: 8px;
    }
    .listings-filter-buttons{
        margin: 0;
        justify-content: flex-start;
    }
    
    .property-cards{
        flex-direction: column;
        flex-wrap: nowrap;
        padding-top: 16px;
        -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 16px, rgba(0, 0, 0, 1) calc(100% - 16px), rgba(0, 0, 0, 0) 100%);
        mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 16px, rgba(0, 0, 0, 1) calc(100% - 16px), rgba(0, 0, 0, 0) 100%);        
    }
    
    .fb-web{
        display: none;
    }
    .fb-mob{
        display: inline-flex;
    }
    
    #listing-main-banner{
        height: var(--doc-height)!important;
    }
   
    .sub-page.listing-page #content-wrapper.page-wrap{
        padding-top: 0;
    }
    .listing-title{
        width: 100%;
        padding: 0 24px;
    }
    .listing-title h1{
        font-size: 36px;
    }
    .listing-title-content{
        padding: 72px 0px;
        justify-content: flex-start;
    }
    
    .listing-title-content .container{
        flex-direction: column;
        padding: 0 16px;
    }
    .listing-title-content-left{
        height: 20%;
        width: 100%;
    } 
    .listing-title-partner{
        justify-content: center;
    }
    .listing-title-content-right{
        width: 100%;
        height: 80%;
    }
    .lt-info-blocks {
        position: relative;
        display: flex;
        flex-direction: column;
        align-self: flex-start;
        justify-content: center;
    }
    .lt-info-block{
        padding: 16px 0px
    }
    .lt-info-block-content{
        font-size: 36px;
    }
    .lt-info-block-content p{
        margin-bottom: 8px;    
    }
    #listing-top .banner-blk-txt {
        position: initial;
    }
    #listing-top.animate .banner-blk-txt{
        animation: opac-in-animate 0.7s ease forwards;
    }
    #listing-top .banner-blk-txt .banner-content-inline-buttons{
        position: absolute;
        bottom: -48px;
        margin: 0;
    }
    #listing-wrapper + #contact-banner {
        padding-top: 48px;
    }
    #contact-banner {
        padding-bottom: 0px;
    }
    
    .property-page{
        background: var(--white-color);
    }
    .property-page #content-main {
        margin-top: 0; 
        margin-bottom: 0;
    }
    .property-page .content-scroll{
        scroll-margin-top: 120px;
        scroll-margin-top: 96px;
    }
    
    #property-top{
        display: flex;
        flex-direction: column;
    }
    #property-top.sticky-padding{
        padding-top: 0px;
    }
    #property-top-info{
        display: flex;
        order: 2;
        margin-top: var(--lg-pad);
        margin-bottom: 24px;        
    }
    .property-top-title{
        display: flex;
    }
    
    .property-title{
        width: 100%;
    }
    .property-title h1{
        font-size: 18px;
        margin: 0;
    }

    .property-top-images{
        position: relative;
        display: flex;
        flex-direction: column;
        order: 1;
    }
    #property-image-slider{
        margin-left: -16px;
        margin-right: -16px;
        height: 60dvh;
        height: 480px;
        display: flex;
        order: 1;
    }
    
    #property-image-slider .swiper-wrapper{
        display: flex;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr;
        grid-column-gap: 0px;
        grid-row-gap: 0px;
    }
    .prop-img-link{
        display: flex;
        width: 100%;
        height: 100%;
    }
    #property-image-slider .swiper-wrapper .swiper-slide{
        display: flex;
        width: 100%;
        height: 100%;
    }
    #property-image-slider .swiper-wrapper .swiper-slide:nth-child(1),
    #property-image-slider .swiper-wrapper .swiper-slide:nth-child(2),
    #property-image-slider .swiper-wrapper .swiper-slide:nth-child(3),
    #property-image-slider .swiper-wrapper .swiper-slide:nth-child(4){
        grid-area: none;
    }
    #property-image-slider .swiper-wrapper .swiper-slide img{
        aspect-ratio: auto;
    }
    #property-image-slider .view-all-images-btn{
        display: none;
    }
    #property-image-slider .resize-images-btn,
    #property-image-slider .share-btn-mobile{
        position: absolute;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: center;
        width: 32px;
        height: 32px;
        line-height: 32px;
        bottom: 16px;
        right: 16px;
        font-size: var(--icon-font);
        color: var(--white-color);
        text-shadow: var(--chip-text-shadow);
        background: var(--chip-white-alpha-color);
        backdrop-filter: blur(2px);
        z-index: 2;
    }
    #property-image-slider .resize-images-btn{
        pointer-events: none;
    }
    #property-image-slider .share-btn-mobile{
        bottom: 56px;
        border: none;
        box-shadow: none;
    }
    .lg-toolbar .lg-icon{
        font-size: 20px;
    }
    
    #property-image-controls{
        display: flex;
        position: absolute;
        justify-content: center;
        padding: 0 var(--xl-pad);
        height: 24px;
        bottom: 16px;
    }

    #property-facilities .content-image-blocks {

    }
    #property-details-last .banner-content-inline-buttons{
        margin-top: 24px;
        justify-content: space-between;    
    }
    #property-details-last .banner-content-inline-buttons .button{
        width: calc(50% - 8px);
        margin: 0;
    }
    .property-mob-button{
        position: fixed;
        display: flex;
        top: 0;
        right: 0;
        z-index: 99;
    }
    .property-top-wrapper,
    .property-top-button,
    .property-mob-button .button span{
        display: none;
    }
    .menu-open .property-mob-button{
        z-index: 97;
    }
    .property-mob-button .button.btn-icon{
        width: 56px;
        height: 56px;
        padding: 16px;
        border: 0px;
    }
    .property-mob-button .button:after{
        display: none;
    }
    .property-mob-button .button i{
        margin: 0;    
    }
    #property-icons{
        margin-bottom: var(--lg-pad);
    }
    #property-icons .icon-blocks{
        padding: 0;
        flex-direction: row;
        flex-wrap: wrap;
    }
    #property-icons .icon-blocks .icon-block{
        width: calc(50% - 4px);
    }
    .icon-block-inline-sm{
        padding: 4px;
    }
    .icon-block-inline-sm .icon-block-icon {
        background: transparent;    
    }
    .icon-block-inline-sm .icon-block-content {
        margin: 0;
        justify-content: center;
        padding-left: 8px;
        width: calc(100% - 40px);
    }
    .icon-block-inline-sm .icon-block-title,
    .icon-block-inline-sm .icon-block-inline-text{
        margin-bottom: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    #property-details{
        padding: 72px 0 0 0;
        padding: 24px 0 0 0;
    }
    #property-details .content-banner{
        padding: 0;
    }
    #property-details #property-details-last.content-banner{
        padding-top: 24px;
    }
    .property-page #location-banner .content-banner {
        padding: 0 16px;
    }
    .property-page #location-banner .blk-bg-dark{
        padding: 64px 24px;
    }
    .property-mobile-button{
        display: flex;
        flex-direction: column;
        width: 100%;
        margin-top: 32px;
        opacity: 0;
        animation: opac-in-animate 0.8s ease-in forwards;
    }
    .property-mobile-button .button{
        width: 100%;
    }
    .property-mobile-button .button + .button{
        margin-top: 16px;
    }
    .content-banner-wrap-sm{
        padding: 32px 0px;
    }
    .property-overview-content{
        margin-bottom: 24px;
    }
    
    
    #main-filters{
        width: 100%;
    }
    .main-filter-title{
        padding: var(--lg-pad) var(--mid-pad) var(--main-pad) var(--mid-pad);
    }
    .main-filter-blocks{
        padding: 0 8px 0 16px;
        margin-right: 8px;
    }
    .main-filter-buttons{
        padding: var(--main-pad) var(--mid-pad) var(--main-pad) var(--mid-pad);
    }
    .main-footer-buttons {
        display: none;
    }
    .filter-title{
        padding: 16px 48px 16px 0px;
    }
    .filter-title.accordion-button:after{
        top: 16px;
        right: 12px;
    }
    
    
    #image-banner{
        padding: 96px 0px 0px 0px;
    }
    
    #image-banner #image-banner-controls{
        left: 0;
    }
    
    #image-banner .banner-bg-img,
    #image-banner .banner-bg-slider{
        background-position: 90% 50%!important;    
    }
    
    .banner-top-page #image-banner .banner-bg-img{
        background: url(../images/matricardi-vision-mobile.webp) no-repeat!important;
        background-size: cover!important;
    }
    
    
    #location-banner .container{
        padding: 0;
    }
    #location-banner .blk-bg-light, 
    #location-banner .blk-bg-dark{
        padding: 48px 16px;
    }
    .blk-bg-dark:after{
        left: 0;
    }
    #location-banner .content-info-list{
        padding: 0;
        opacity: 1;
        z-index: 2;
    }
    #facilities{
        padding-bottom: 96px;
    }
    #facilities .content-banner,
    #facilities .banner-blk-txt{
        position: initial;
    }
    #facilities.animate .banner-blk-txt{
        animation: opac-in-animate 0.7s ease forwards;
    }
    #facilities .banner-content-inline-buttons-right{
        position: absolute;
        bottom: 24px;
        
    }
    #facilities .banner-content-inline-buttons-right .button{
        margin: 0;
        margin-right: 16px;
    }
    #facilities .content-image-blocks{
        margin-top: 32px;
    }
    
    
    #content-wrapper-full{
        padding-top: 56px;
    }
    .content-full-screen{
        flex-direction: column;
    }
    .content-full-left{
        width: 100%;
        padding: 48px 16px;
    }
    .content-full-right{
        width: 100%;
        padding: 64px 16px 24px 16px;
    }
    .content-full-left-block {
        position: relative;
        top: initial;
        margin: 0;
        width: 100%;
    }	
	.page-top{
		padding-top: 96px;
	}
	
	.page-top-content{
		width: 100%;		
		padding: 0;
		margin: 0;
		margin-bottom: 24px;
	} 
	.page-body {
		width: 100%;
		padding: 0;
		margin: 0;
		margin-bottom: 48px;
	}
	.page-full .page-body{
		width: 100%;
	}
    .page-intro-content{
        font-size: 18px;
        line-height: 1.6;
    }
	.page-main {
		padding: 48px 0 48px 0;
	}
	.page-top-image .container{
		position: relative;
		overflow: hidden;
	}
	.page-top-image-wrap{
		position: relative;
		overflow: hidden;
		display: block;
	}
	.page-top-image img{
		max-width: initial;
		width: 140%;
		margin-left: -20%;	
		margin-right: -20%;		
	}
    .page-full-content{
        margin-bottom: 0;
    }
	.page-buttons{
		flex-wrap: wrap;
		justify-content: center;
	}

    /* MAP PAGE *****************************/
    .map-page:not(.menu-open) #header .nav-toggle {
        display: none;
    }
    .map-page #content-main {
        padding: 0;
    }
    .main-map-map {
        height: 100dvh;
    }
    .map-search {
        display: none;
    }
    .listings-header .map-search-bar{
        display: none;
    }
    .main-mob-filters {
        position: fixed;
        display: flex;
        width: calc(100% - var(--med-pad));
        top: 0;
        height: 48px;
        z-index: 1;
        margin: var(--mid-pad);
        gap: var(--mid-pad);
    }
    .map-menu-btn.nav-toggle,
    .map-menu-btn {
        position: absolute;
        left: 0;
        top: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        width: var(--lg-pad);
        height: var(--lg-pad);
        font-size: var(--main-font);
        background: transparent;
        color: var(--text-color);
        border: none;
    }
    .map-search-bar {
        width: 100%;
        margin: 0;
        box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.08);
    }
    .map-search-bar .form-control {
        padding-left: var(--lg-pad);
    }
    .map-search-bar .form-control::placeholder {
        color: var(--text-color);
    }
    .map-search-filters button {
        background: var(--white-color);
        border: none;
        outline: none;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 48px;
        height: 48px;
        font-size: var(--main-font);
        color: var(--text-color);
        box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.08);
        opacity: 1;
        transition: all 0.2s ease;
    }
    .main-house-list .map-search-filters button {
        box-shadow: none;
        background: var(--bg-color);
    }
    .map-search-filters button:disabled {
        opacity: .48;
        pointer-events: none;
        transition: all 0.3s ease;
    }
    #map-main-menu .main-filter-wrapper {
        padding: 0;
    }
    #map-main-menu #main-filters {
        position: fixed;
        width: 100vw;
        padding: 0;
    }
    #map-main-menu #main-filters:not(.show-filters) {
        left: -100%;
    }
    #map-main-menu .main-filter-header {
        display: none;
    }
    #map-main-menu .main-filter-title {
        display: flex;
        padding-bottom: var(--mid-pad);
    }
    
    #map-main-menu .main-filter-blocks{
        padding-bottom: var(--mid-pad);
        overflow-y: auto;
    }
    
    .main-filter-info {
        padding: 0 var(--mid-pad);
    }
    .main-filter-info .form-select-box {
        margin-bottom: var(--mid-pad);
    }
    .main-filter-chips {
        margin-bottom: var(--main-pad);
    }
    .main-filter-views {
        display: none;
    }
    .map-page .main-filter-buttons {
        display: flex;
    }
    .map-canvas .gm-style .gm-style-iw-c {
        width: 224px;
        width: 240px;
    }
    .map-canvas .gm-style .gm-style-iw-d {
        padding: 0;
    }
    .map-canvas .gm-control-active{
        border-radius: 0px!important;
    }
    
    .house-marker-info {
        flex-direction: column;
    }
    .house-marker-image {
        height: 112px;
        max-height: initial;
        width: 100%;
    }
    .house-marker-image .listing-date {
        padding: var(--sm-pad);
    }
    .house-marker-details {
        flex-direction: column;
        padding: var(--sm-pad);
        width: 100%;
    }
    .house-marker-top {
        flex-direction: column;
    }
    .house-marker-top-col {
        padding-bottom: var(--sm-pad);
    }
    .house-marker-items {
        padding: var(--sm-pad) 0;
        gap: var(--sm-pad);
        row-gap: 6px;
    }
    .house-marker-item {
        width: calc(50% - 6px);
    }
    .house-marker-prices {
        padding: 0;
    }
    .house-marker-prices span {
        line-height: 24px;
    }
    .house-marker-footer{
        padding-top: 8px;
    }
    .house-marker-footer .inline-txt-btn span{
        display: none;
    }
    .main-house-list {
        padding: var(--mid-pad);
        z-index: 1;
        left: -100%;
        transition: left 0.2s ease;
        z-index: 98;
    }
    .main-house-list.show {
        left: 0;
        transition: left 0.4s ease-out;
    }
    .main-house-list.no-animate {
        left: 0;
        opacity: 1;
        pointer-events: auto;
        transition: none;
    }
    .main-house-list .content-page-title::after {
        display: none;
    }
    .main-house-list h1 {
        font-size: var(--lg-font);   
    }
    .house-filters {
        display: flex;
        flex-direction: row;
        gap: var(--mid-pad);
        margin-bottom: var(--mid-pad);
    }
    .house-filters .map-search-bar {
        box-shadow: none;
    }
    .house-filters .map-search-bar .form-control {
        background: var(--bg-color);
    }
    .map-list-btn-mob,
    .map-view-btn-mob{
        position: fixed;
        bottom: 0;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: var(--mid-pad);
        pointer-events: none;
    }
    .map-view-btn-mob{
        position: absolute;
        left: 0;
    }
    .map-list-btn-mob button {
        background: var(--white-color);
        box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.08);
        color: var(--text-color);
        pointer-events: all;
    }
    .map-view-btn-mob button{
        box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.08);
        pointer-events: all;
    }    
    .map-list-btn-mob .button:hover, 
    .map-list-btn-mob .button:active, 
    .map-list-btn-mob .button:focus {
        color: var(--text-color);
        background: var(--white-color);
        transition: none;
    }    
    .map-view-btn-mob .button:hover, 
    .map-view-btn-mob .button:active, 
    .map-view-btn-mob .button:focus {
        color: var(--white-color);
        background: var(--sub-color);
        transition: none;
    } 
    .property-cards {
        gap: 0;
    }
    .property-card {
        width: 100%;
        flex-direction: row;
        gap: var(--sm-pad);
        border-bottom: 1px solid var(--border-color);
        padding: var(--mid-pad) 0;
    }
    .property-card:first-child {
        padding-top: 0;
    }
    .property-card-image {
        width: 40%;
        height: auto;
    }
    .property-card-image .listing-date {
        padding: var(--sm-pad);
        display: none;
    }
    .property-card-details {
        width: 60%;
        padding: 0;
    }
    .property-card-title {
        line-height: 1.2;
    }
    .property-card-items {
        margin-bottom: var(--xs-pad);
    }
    .property-card-item div {
        width: 16px;
        height: 16px;
        font-size: 10px;
    }
    .property-card-item span {
        font-size: var(--sm-font);
    }

    
    
    .category-wrapper{
        flex-direction: column;
        margin-bottom: 48px;
    }
    .category-view{
        width: 100%;
        padding: 0;
    }
    .category-right{
        width: 100%;
        padding: 0;
        display: none;
    }
    .category-news-blocks{
        flex-direction: column;
    }
    .category-news-blocks .news-item{
        width: 100%;
    }
    
    .article-title h1, 
    .cat-header h1 {
        font-size: 24px;  
    }
    .article-page #content-main{
        margin-bottom: 0px;
    }
    .article-page .container{
        padding: 0;
    }
    .article-main{
        padding: 0 24px;
    }
    .news-item-full .news-img-blk,
    .news-img .news-img-blk {
        height: 192px;
    }
    .news-item-title h3{
        font-size: 14px;
    }
    .grey-shape{
        display: none;
    }
    
    .news-wrap .content-banner-center .banner-blk-txt{
        text-align: left;
    }
    .news-wrap .content-banner-center .content-banner-title:after {
        left: 16px;
    }
    .news-wrap .content-banner-title{
        text-align: left;
        padding: 0 16px;
        margin-bottom: 0;
    }
    .news-slider{
        position: relative;
        padding: 0 8px;
        margin: 0 -4px;
    }
    .news-slider .news-item-content-block{
        padding: 16px;
    }
    .news-item.swiper-slide{
        padding: 0px 12px;
    }
    .article-page #article-news-title {
        margin: 0;
    }
    .news-slider .news-item-text {
        display: flex;
        color: var(--text-color);
        margin: 0;
    }
    .news-slider .news-item-content-block:after{
        display: none;
    }
    .news-slider .news-item-text div{
        opacity: 1;
    }
    .news-slider .news-item-content {
        position: relative;
        top: initial;
        left: initial;
        height: 100%;
        width: 100%;
        padding: 0;
    }
    .news-slider .news-item-block{
        background: transparent;
    }
    .news-slider .news-item-content-block {
        position: relative;
        position: initial;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        height: 100%;
        width: 100%;
        padding: 0;
        color: var(--text-color);
        z-index: 1;
    }
    .news-slider .news-item-title{
        margin-top: 16px;
    }
    .news-slider .news-item-date {
        display: none;
    }
    .news-slider .txt-btn span{
        opacity: 1;
        padding-right: 4px;
        color: var(--sub-color);
    }
    .news-slider .txt-btn div{
        left: initial;
        right: 0;
        color: var(--sub-color);
    } 
	.content-news-wrap {
		padding: 48px 0px;
	}
    .news-wrap{
        padding: 24px 0px 72px 0px;
    }
    .news-wrap .news-slider{
        -webkit-mask-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 4%, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0) 100%);
        mask-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 4%, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0) 100%); 
    }
    .news-wrap .banner-blk-button{
        display: none;
    }
    .news-slider .news-item-block:hover .news-item-text div{
        opacity: 1;
        animation: none!important;
    }
    
    .news-item-line > a{
        padding: 8px;
    }
    .news-item-line-image {
        position: relative;
        display: flex;
        flex-direction: column;
        overflow: hidden;
        height: 72px;
        width: 96px;
    }
    .news-item-line-text{
        padding-left: 16px;
        padding-top: 0;
    }
    .news-slider .news-item-text{
        margin-bottom: 16px;
    }
    .news-slider .news-item-text p{
        margin: 0px;
    }
    .news-slider .news-item-text div{
        position: relative;
        display: -webkit-box;
        overflow: hidden;
        text-overflow: ellipsis;	
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        line-clamp: 3;
    }
    .news-item-share-btn{
        top: 16px;
        left: 16px;
    }
    .news-slider .news-item-share-btn {
        top: -122px;
    }
    .news-slider .news-item-date{
        top:  16px;
        left: 56px;
        font-size: 12px;
    }
    .news-slider .news-item-link{
        margin-top: auto;
    }


    /* CONTACT *****************************/
    .contact-page {
        background: radial-gradient(80% 50% at 0% 0%, rgba(177, 153, 127, 0.24) 0%, rgba(177, 153, 127, 0.00) 50%);
        background: #FFFFFF;
    }
    
    .contact-page:before {
        content: '';
        position: absolute;
        display: block;
        top: 0;
        left: 0;
        width:100%;
        height: 40dvh;
        background: radial-gradient(60% 64% at 0% 0%, rgba(177, 153, 127, 0.40) 0%, rgba(177, 153, 127, 0.00) 100%);
    }

    .contact-page #banner-wrapper + #content-main{
        padding-top: 32px;
    }

	.sub-page.contact-page #content-wrapper{
		padding-top: 0px;
        padding-top: 72px;
	}
    
    #contact{
        padding: 0;
    }
    .contact-page .content-main-wrapper{
        margin-bottom: 0;
    }
    .contact-page .content-left, 
    .contact-page .content-right, 
    .contact-banner .content-left, 
    .contact-banner .content-right {
        width: 100%;
    }
    .contact-banner .content-left {
        display: none;    
    }
    
    .contact-page .content-right, 
    .content-right{
        padding: 0;
        margin-bottom: 48px;
    }
    .content-right .content-form{
        margin-left: -16px;
        margin-right: -16px;
    }
	.contact-form-block{
        position: relative;
        top: initial;
        right: initial;
		width: initial;
        margin: 0;
		padding: 32px 16px 64px 16px;
		border-radius: 0px;
	}
    .contact-form-block .content-form-text{
        margin-bottom: 32px;
    }
    .form-cols .form-col.form-btns{
        margin-bottom: 0;
    }
    .contact-page #contact-form-wrap .modal-success {
        background: var(--white-color)!important;
    }
    
    .contact-banner .content-left .banner-blk-txt{
        width: 100%;
        margin-bottom: 48px;
    }
    .contact-page .content-left{
        padding-right: 0;
    }
    
    .contact-page .content-banner-top{
        margin-bottom: 32px;
    }
    .contact-page .content-banner-top h1{
        font-size: 32px;
    }
    .contact-page .intro-txt{
        display: none;
    }
    .contact-form-block .form-btns .button:not(.wa-btn) span{
        width: 100%;
    }
    
    .contact-page .contact-form-block{
        background: transparent;        
        --input-bg-color: #F2F2F2;
        padding-top: 0;
    }
    .contact-page .content-form-text{
        display: none;
    }
    
    .info-blocks{
        flex-wrap: wrap;
    }
    .info-block-list{
        width: 50%;
        padding: 24px 0px;
        border: 0px;
    }
    .info-blocks .info-block-list:first-child{
        width: 100%;
        order: 3;
        border-top: 1px solid var(--border-color);
    }
    .info-blocks .info-block-list:nth-child(3){
        padding-left: 24px;
        border-left: 1px solid var(--border-color);
    }
    .info-blocks .info-block-list:first-child .info-block-text{
        flex-direction: row;        
    }
    .info-blocks .info-block-list:first-child a{
        margin-right: 8px;    
    }
    
	
	.gm-style .gm-style-iw-c{
		border-radius: 24px;
	}
	.gm-style .gm-style-iw-d{
		padding: 16px;
		padding: 20px 8px 8px 8px;
	}
    #faq-wrapper{
        margin-bottom: 72px;
    }
    #faq-wrapper.dark-banner-block .content-banner {
        padding: 72px 16px 24px 16px;
    }
    .faq-wrapper{
        padding: 0px;
    }
    #faq-wrapper .banner-blk-txt{
        margin-bottom: 48px;
    }
    .faq-category-title{
        margin-bottom: 24px;
    }
    .faq-category-title h3{
        font-size: 18px;
    }
    .faq-category{
        margin-bottom: 0;
    }
    .faq-block-wrap{
        flex-direction: column;
        column-gap: 0px;
    }
    .faq-block{
        width: 100%;
    }
    .faq-title{
        padding: 12px 48px 12px 0px;
    }
    .accordion-button:after{
        top: 12px;
    }
    
    .txt-blocks{
        flex-direction: column;
    }
    .txt-block:before{
        display: none;
    }
    .txt-block{
        display: flex;
        padding: 16px 16px;
        line-height: 24px;
        text-align: left;
    }
    .txt-blocks-2 .txt-block {
        width: 100%;
        font-size: 14px;
    }
    .txt-block .txt-block-text{
        display: flex;
        width: 100%;
    }
    .txt-block .txt-block-text span{
        margin-left: auto;
        font-size: 18px;
    }
    .txt-block:first-child{
        border-radius: 10px 10px 0 0;
        margin-bottom: 4px;
    }
    .txt-block:last-child{
        border-radius: 0 0 10px 10px;
    }
    
    .content-text-blocks-2 .content-text-blk{
        width: 100%;
    }
    .content-text-blocks-2 h4{
        font-size: 16px;
        line-height: 1.4;
        margin-bottom: 8px;
    }
    .content-text-blocks-2.content-text-blocks .text-blk-text{
        display: flex;
    }
    .content-text-blocks-2 .content-text-blk > a .text-blk-btn {
        height: 24px;
        margin-top: auto;
        display: flex;
    }
    .content-text-blk.content-text-blk-big .text-blk-text p{
        margin-bottom: 24px;
    }
    
	.modal-dialog{
		min-width: 100%;
		max-width: 100%;
		padding: 0 16px;
	}
	.modal-header{
		padding: 48px 48px 24px 48px;
		padding: 32px 32px 24px 32px;
	}
	.modal-body {
    	padding: 0px 32px;
	}
    
    .modal-body-padding{
        padding: 32px;
    }
    .modal-body .form-btns .button{
        padding-left: 24px;
        padding-right: 24px;
        min-width: 120px;
    }
    
	.modal-footer {
    	padding: 0px 32px 32px 32px;
	}
    
    #download-modal .modal-success-block{
        padding: 32px 48px;
    }
    #download-modal .modal-success-block p{
        margin-bottom: 32px;
    }
    
    
	.empty-page-msg {
		width: 100%;
        padding: 0 24px;
	}
    .empty-page-header div img {
        height: 32px;
        width: auto;
    }
	.empty-page-title{
		font-size: 24px;
	}
    .empty-page-img {
        margin-bottom: 24px;
        padding: 0 25%;
        font-size: 1;
    }
    .empty-page-img div img {
        height: 48px;
        width: auto;
    }
    .empty-page-txt p{
        padding: 0;
    }    
	
}

/*Mobile AND TABLET Footer*/

@media (max-width: 1199px){
    
    
	#footer{
		padding: 0;
		margin: 0px;
/*        z-index: 1;*/
	}
    #footer .container{
        padding: 0;
    }
	.footer-top,
	.footer-content,
	.footer-bottom .container{
		flex-direction: column;
	}
    
    .footer-content{
        margin: 0;
        padding-top: 0px;
		padding-bottom: 0px;	
	}
    
    .footer-top{
/*        background: var(--main-color);*/
    }
    .footer-menu{
        padding: var(--xs-pad) var(--mid-pad);
        border-right: 0px;
        order: 2;
    }
/*
    .footer-last-col{
        position: initial;
        order: 1;
        width: 100%;
        padding: 0 var(--mid-pad) var(--xs-pad) var(--mid-pad);
        border-bottom: 1px solid var(--border-color);         
    }
    .footer-last-col .footer-menu-title{
        padding-top: 0;
    }
    .footer-last-col .footer-menu-title h5{
        font-size: 18px;
    }
*/
    .footer-menu-margin,
    .footer-menu-title{
        margin: 0;
    }
	
	.footer-menu{
		width: initial;
        margin: 0 16px;
        padding: 0;
	}
    .footer-menu-collapse{
        border-top: 1px solid var(--border-color);         
    }
    .footer-menu.footer-last-col .footer-menu-collapse{
        border-bottom: 1px solid var(--border-color);         
    }
    .footer-content .footer-menu:first-child{
        border: 0px;     
    }
	.footer-menu-title{
		position: relative;
		display: flex;
		padding: 12px 0px;
        font-weight: 600;
		line-height: 24px;
	}
	.footer-menu-title div{
		padding: 0;
        margin: 0;
        line-height: 24px;
        font-weight: 600;
	}
	.footer-menu-title.footer-title-margin {
		margin-top:0;
	}
	.footer-menu-collapse .footer-menu-title:after {
		position: absolute;
		display: inline-block;
		content: "\f078";
		right: 0px;
		top: 12px;
		height: 24px;
		width: 24px;
		line-height: 24px;
		font-size: 14px;
		color: var(--text-color);
		vertical-align: middle;
		text-align: center;
		font-style:normal;
		font-family: "Font Awesome 6 Pro";
		font-weight: 300;
		transform: rotate(0deg);
		transition: all 0.2s ease;
	}
	.footer-menu-collapse.footer-menu-open .footer-menu-title:after{
		color: var(--text-color);
		transform: rotate(-180deg);
		transition: all .3s ease;
	}
	.footer-menu-collapse .footer-menu-list{
		display: none;
/*        margin-top: -8px;*/
		padding-bottom: 24px;
	}
    .footer-contact{
        order: 2;
    }
	.footer-menu-list li{
		line-height: 20px;
        font-size: 14px;
	}
	
    .footer-bottom{
        padding: 0;
    }
    .footer-bottom-content {
        padding: 24px 16px 0px 16px;
        width: 100%;
    }
    .footer-logo {
        position: relative;
        padding: 0px;
        margin-bottom:var(--mid-pad); 
    }
    .footer-logo img{
        height: 24px;
    }
    
	.footer-copyright{
		flex-direction: column;
		width: 100%;
		font-size: 14px;
        padding: 0px;
        margin-bottom: 16px;
		order: 3;
		text-align: left;
	}

    .footer-copyright p{
        margin: 0;
        font-size: 10px;
    }
    
	.footer-social{
        display: flex;
		width: 100%;
		margin: 0;  
        padding: 16px 0px;
	}
    .footer-socials{
        margin: 0;
    }
	.footer-socials li{
		margin: 0px;
        margin-right: 8px;
	}
	.footer-social a{
		font-size: 18px;	
	}
    .footer-sub-links{
        order: 4;
        width: 100%;
        padding: 0px 8px;
        padding-bottom: 24px;
    }
    .footer-sub-links ul{
        align-self: flex-start;
    }
    .footer-sub-links li{
        font-size: 10px;
        margin: 0 8px;
        padding: 0;
        line-height: 16px;
    }
    
    .footer-whatsapp{
        bottom: 24px;
        right: 24px;
    }
    .whatsapp-button{
        width: 48px;
        height: 48px;
        font-size: 24px;
    }
    .property-page .footer-whatsapp{
        bottom: 96px;
        right: 16px;
    }
    
}


/*Mobile AND TABLET Nav*/


@media (max-width: 1199px){
	
	#header{
		z-index: 99;
	}
	.menu-open #header{		
		background: transparent;
		transition: all 0.3s ease-out;
	}
	.menu-open #header:after,
	.menu-open #header.sticky:after{
		opacity: 0;
	}
	
	#header .container{
		padding: 0px;
	}

	.show-bg .sticky .header-main:before{
		display: block;
		opacity: 1;
		animation: opac-in-animate 0.2s ease forwards;
	}
	.header-main:after,
	.header-top-nav ul{
		display: none;		
	}
    
	.header-main{
		padding: 0px;
		background: var(--white-color);
		background: transparent;
	}
	.nav-toggle{
		display: flex;
		margin: 0px;
        width: 56px;
        height: 56px;
	}
    .nav-main-top .nav-logo-main{
        display: flex;
        justify-content: center;
        padding: 12px 56px 12px 0px;
        width: calc(100% - 56px);
        margin: 0;
    }
	.logo-main {

	}
	.nav-logo-main img,
    .logo-main img {
	   height: 32px;
    }
    .header-center{
        margin-right: 48px;
    }
    
    
/*
	.lang-dropdown-toggle{
		height: 56px;
		padding: 12px 28px 12px var(--mid-pad);
		padding: 16px 32px 16px 16px;
	}
	.home-wrap #header:not(.sticky) .btn.lang-dropdown-toggle,
	.home-wrap #header:not(.sticky) .lang-dropdown-toggle {
		background: var(--bg-color);
	}
*/
	
	.nav-wrap{
		display: flex;
		position: fixed;
		flex-direction: column;
		justify-content: flex-start;
		width: 100%;
        max-width: 560px;
		height: 100%;
		height: 100dvh;
		left: -100%;
		top: 0px;
		padding: 0;
        background: var(--white-color);
		border-radius:0px;
		overflow: hidden;
        overflow-y: auto;
		transition: all 0.2s ease;
	}
	.menu-open .nav-wrap{
		left: 0%;
		transition: all 0.3s ease-out;
	}
    
    .nav-header-mobile{
        position: relative;
        display: flex;
        justify-content: center;
        padding: 0px;
    }
    .nav-logo-icon{
        position: relative;
        display: flex;
        margin: 12px 0px;
    }
    .nav-logo-icon img{
        height: 24px;
        width: auto;
    }
    .nav-header-mobile .nav-toggle{
        position: absolute;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        top: 0px;
        left: 0px;
        margin: 0;
        width: 48px;
        height: 48px;
        font-size: 16px;
        color: var(--text-color);
    }
    
	.nav-main{
/*		padding: 24px 24px 24px 12px;*/
        padding: 16px 16px 16px 56px;
        flex-direction: column;
/*        justify-content: flex-start;*/
        height: calc(100% - 96px);
        overflow-y: auto;
        
        -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 16px, rgba(0, 0, 0, 1) calc(100% - 16px), rgba(0, 0, 0, 0) 100%);
        mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 16px, rgba(0, 0, 0, 1) calc(100% - 16px), rgba(0, 0, 0, 0) 100%);
        
	}
	.nav-main ul{
		flex-direction: column;
		width: 100%;
        padding: 0 8px;
	}
    .nav-main ul.nav-clean-menu {
        width: 100%;
        width: initial;
        padding: 0px;
        margin: 24px 8px 24px 0px;
    }
	.nav-main > ul > li {
		padding: 0;
		width: 100%;
	}
	.nav-main > ul > li a{
		width: 100%;
        color: var(--white-color);
        color: var(--text-color);
        font-size: 22px;
        margin-bottom: 8px;
	}
    
    .nav-main ul.nav-icon-menu {
        flex-direction: column;
        flex-wrap: nowrap;
        width: 100%;
/*        padding: 24px 8px 16px 0px;*/
    }
    
    .nav-main > ul > li.menu-icon-link{
        width: 100%;
        padding: 0;
        margin-bottom: 4px;
    }
    .menu-item-icon{
        width: 32px;
        height: 32px;
        font-size: 16px;
        align-self: center;
    }
    .menu-item-main {
		margin: 0;
        font-size: 14px;
        padding: 0;
        width: calc(100% - 32px);
        padding-left: 12px;
    }
    .menu-item-main div{
        font-size: 16px;
    }
    .menu-item-main span{
        font-size: 12px;
    }
    
    .nav-address{
        padding-left: 0;
    }
	.show-mob,
	.nav-main > ul > li.show-mob{
		display: flex;
	}
	.nav-main > ul > li.show-mob > a,
    #header.sticky .nav-main > ul > li.show-mob > a{
		font-weight: 300;
        color: var(--light-text-color);        
	}	
    
    .header-buttons{
        padding-right: 8px;
    }    
    
    .header-contact-btn-mob{
        display: flex;
    }
    .header-button.header-login-btn,
    .header-button.header-contact-btn{
        display: none;
    }
    .header-lang{
        display: none;
    }
    
    .nav-wrap .nav-lang-mobile{
        display: flex;
        position: absolute;
        bottom: 0;
        width: 100%;
        background: #FFFFFF;
        padding: 0px 0px 0px 40px;
    }
    .nav-lang-mobile .header-top-lang > span{
        line-height: 36px;
        font-size: 12px;
    }
    #mob-lang-btn{
        text-transform: capitalize;
        color:var(--text-color); 
    }    
    .lang-dropdown{
        padding: 8px 0px;
    }
    .lang-dropdown .dropdown-menu,
    .header-dropdown .dropdown-menu {
        padding:var(--xs-pad);
        right: 8px;
    }
    .nav-lang-img{
        width: 16px;
        height: 16px;
        line-height: 16px;
        margin: 4px 8px 4px 4px;
    }
    .nav-lang-popover{
        display: flex;
        flex-direction:column;
        position: fixed;
        bottom: 0;
        padding: 16px;
        border-radius: 10px 10px 0px 0px;
        background: #FFFFFF;
        width: 100%;
        z-index: 9999;
        bottom: 0;
        opacity: 0;        
        transform: translateY(100%);
        transition: all 0.2s ease;
    }    
    .show-lang .nav-lang-popover{
        display: flex;
        transform: translateY(0%);
        opacity: 1;
        transition: all 0.4s ease-out;
    }
    .show-lang #header{
        z-index: 90;
    }
    .lang-popover-title{
        position: relative;
        color: var(--text-color);
        margin-bottom: 16px;
    }
    .nav-lang-popover-item{
        position: relative;
        display: flex;
        width: 100%;
        padding: 12px;
        border-radius: 10px;
    }
    .nav-lang-popover-item.lang-selected{
        background: var(--bg-color);
    }
    .nav-lang-popover-item span{
        font-weight: 600;    
    }
    .nav-lang-popover-item .nav-lang-img {
        width: 24px;
        height: 24px;
        line-height: 24px;
        margin: 0px 12px 0px 0px;
    }
    .nav-lang-popover-item:after{
        content: "\f105";
        position: absolute;
        top: 12px;
        right: 8px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: left;
        width: 24px;
        height: 24px;
        line-height: 24px;
        color: var(--light-text-color);
        background: none;
        font-size: 14px;
        font-family: "Font Awesome 6 Pro";
        font-weight: 300;
    }
    .nav-lang-popover-close{
        position: absolute;
        top: 0;
        right: 0;
        display: inline-flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: center;
        width: 24px;
        height: 24px;
        line-height: 24px;
        font-size: var(--icon-font);
        color: var(--text-color);
        box-shadow: none;
        border: 0px;
        background: transparent;
    }

/*
    #header.sticky{
        background:var(--white-color);
    }
    .menu-open #header.sticky .header-main{
        background:var(--main-color);
    }
    #header.sticky .logo-main-dark,
    .white-header .logo-main-dark,
    .menu-open .logo-main-dark{
        display: flex;
    } 
    #header.sticky .logo-main-light,
    .menu-open .logo-main-light{
        display: none;
    }
*/

    #outer-wrapper:not(.banner-top, .home-wrap) #header:after, 
    #header.sticky:after {
        display: none;
    }    
	.menu-ani .home-page #header:not(.sticky) .nav-icon span, 
	.menu-open .home-page #header:not(.sticky) .nav-icon span,
	.menu-ani .nav-icon span, 
	.menu-open .nav-icon span {
		background: none!important;
	}
/*
	#outer-wrapper.white-header #header:not(.sticky) .nav-icon span,
	#outer-wrapper.white-header #header:not(.sticky) .menu-ani .nav-icon span,
	#outer-wrapper.white-header #header:not(.sticky) .nav-icon span:before,
	#outer-wrapper.white-header #header:not(.sticky) .nav-icon span:after,
	#outer-wrapper.white-header #header:not(.sticky) .menu-ani .nav-icon span:before,
	#outer-wrapper.white-header #header:not(.sticky) .menu-ani .nav-icon span:after,
    #outer-wrapper:not(.white-header) #header.sticky .nav-icon span,
	#outer-wrapper:not(.white-header) #header.sticky .menu-ani .nav-icon span,
	#outer-wrapper:not(.white-header) #header.sticky .nav-icon span:before,
	#outer-wrapper:not(.white-header) #header.sticky .nav-icon span:after,
	#outer-wrapper:not(.white-header) #header.sticky .menu-ani .nav-icon span:before,
    #outer-wrapper:not(.white-header) #header.sticky .menu-ani .nav-icon span:after{
        background: var(--text-color);
    }  
*/
    
	#outer-wrapper:not(.white-header):not(.menu-open) #header:not(.sticky) .nav-icon span,
	#outer-wrapper:not(.white-header):not(.menu-open) #header:not(.sticky) .menu-ani .nav-icon span,
	#outer-wrapper:not(.white-header):not(.menu-open) #header:not(.sticky) .nav-icon span:before,
	#outer-wrapper:not(.white-header):not(.menu-open) #header:not(.sticky) .nav-icon span:after,
	#outer-wrapper:not(.white-header):not(.menu-open) #header:not(.sticky) .menu-ani .nav-icon span:before,
    #outer-wrapper:not(.white-header):not(.menu-open) #header:not(.sticky) .menu-ani .nav-icon span:after {
        background: var(--text-color);
    } 
    #outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .nav-icon span, 
    #outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .nav-icon span:before, 
    #outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .nav-icon span:after, 
    #outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .menu-ani .nav-icon span:before, 
    #outer-wrapper.transparent-header:not(.menu-open) #header:not(.sticky) .menu-ani .nav-icon span:after{
        background: var(--white-color);
    }
    
    #outer-wrapper.property-page:not(.menu-open) #header:not(.sticky) .nav-icon span,
	#outer-wrapper.property-page:not(.menu-open) #header:not(.sticky) .menu-ani .nav-icon span,
	#outer-wrapper.property-page:not(.menu-open) #header:not(.sticky) .nav-icon span:before,
	#outer-wrapper.property-page:not(.menu-open) #header:not(.sticky) .nav-icon span:after,
	#outer-wrapper.property-page:not(.menu-open) #header:not(.sticky) .menu-ani .nav-icon span:before,
    #outer-wrapper.property-page:not(.menu-open) #header:not(.sticky) .menu-ani .nav-icon span:after {
        background: var(--white-color);
    } 
    #outer-wrapper.property-page:not(.menu-open) #header:not(.sticky) .logo-main-dark{
        display: none;
    }
    #outer-wrapper.property-page:not(.menu-open) #header:not(.sticky) .logo-main-light{
        display: flex;
    }
    
	.menu-open#outer-wrapper #header .nav-icon span,
	.menu-open#outer-wrapper #header .menu-ani .nav-icon span,
	.menu-open#outer-wrapper #header .nav-icon span:before,
	.menu-open#outer-wrapper #header .nav-icon span:after,
	.menu-open#outer-wrapper #header .menu-ani .nav-icon span:before,
	.menu-open#outer-wrapper #header .menu-ani .nav-icon span:after {
		background: var(--white-color);
	}

    #header.sticky .nav-main > ul > li > a, 
    .white-header .nav-main > ul > li > a, 
    #header.sticky .nav-main .drop-link-btn, 
    .white-header .nav-main .drop-link-btn,
    #header.sticky .header-contact-btn-mob .i-btn, 
    .white-header .header-contact-btn-mob .i-btn, 
    .menu-open .header-contact-btn-mob .i-btn {
        color: var(--text-color);
    }
    .nav-main ul li a:hover, 
    .nav-main ul li a:focus, 
    .nav-main ul li a:active,
    #header.sticky .nav-main > ul > li > a:hover, 
    #header.sticky .nav-main > ul > li > a:active, 
    #header.sticky .nav-main > ul > li > a:visited, 
    .white-header .nav-main > ul > li > a:hover,
    .white-header .nav-main > ul > li > a:active,
    .white-header .nav-main > ul > li > a:visited{
        color: var(--text-color);
    }
    
    .white-header .l-btn, 
    .white-header a.l-btn {
        background: transparent;
        color: var(--text-color);
    }
    #header.sticky .l-btn, 
    #header.sticky a.l-btn,
    #outer-wrapper:not(.white-header) #header .l-btn, 
    #outer-wrapper:not(.white-header) #header a.l-btn,
    .menu-open #header .l-btn,
    .menu-open #header a.l-btn{
        background: transparent;
        color: var(--text-color);
        z-index: 2;
    }
    
    #outer-wrapper:not(.white-header) #header:not(.sticky) .l-btn, 
    #outer-wrapper:not(.white-header) #header:not(.sticky) a.l-btn{
        background: transparent;
        color: var(--white-color);
    }
    #outer-wrapper.menu-open #header:not(.sticky) .l-btn, 
    #outer-wrapper.menu-open #header:not(.sticky) a.l-btn{
        background: transparent;
        color: var(--text-color);
    }
	
	.header-button{
		padding: 4px 0px;
	}
	
}

@media (max-width: 767px) {
    
    .nav-main ul{
        padding: 0px;
	}
    
}


/* LARGE MOBILE */

@media (min-width: 400px) and (max-width: 767px) {
	
    
}

/* SMALL MOBILE */

@media (max-width: 360px) {
    .btn-icon i{
        
    }
    .button span{
        font-size: 12px;
    }
}