/* 
Theme Name: Dimora Immobiliare
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2023-04-20
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/

@font-face {
    font-family: 'Adam';
    src: url('fonts/Adam.otf')  format('opentype');
}
@font-face {
    font-family: 'Hello';
    src: url('fonts/Hello.ttf')  format('truetype'),
         url('fonts/Hello.otf')  format('opentype');
}
@font-face {
    font-family: 'Affogato';
    src: url('fonts/Affogato-Black.eot');
    src: url('fonts/Affogato-Black.eot?#iefix') format('embedded-opentype'),
    	 url('fonts/Affogato-Black.woff') format('woff'),
         url('fonts/Affogato-Black.woff2') format('woff2'),
         url('fonts/Affogato-Black.ttf')  format('truetype'),
         url('fonts/Affogato-Black.otf')  format('opentype'),
         url('fonts/Affogato-Black.svg') format('svg');
    font-weight: 900;
    font-style: normal;
}
@font-face {
    font-family: 'Affogato';
    src: url('fonts/Affogato-Bold.eot');
    src: url('fonts/Affogato-Bold.eot?#iefix') format('embedded-opentype'),
    	 url('fonts/Affogato-Bold.woff') format('woff'),
         url('fonts/Affogato-Bold.woff2') format('woff2'),
         url('fonts/Affogato-Bold.ttf')  format('truetype'),
         url('fonts/Affogato-Bold.otf')  format('opentype'),
         url('fonts/Affogato-Bold.svg') format('svg');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'Affogato';
    src: url('fonts/Affogato-Medium.eot');
    src: url('fonts/Affogato-Medium.eot?#iefix') format('embedded-opentype'),
    	 url('fonts/Affogato-Medium.woff') format('woff'),
         url('fonts/Affogato-Medium.woff2') format('woff2'),
         url('fonts/Affogato-Medium.ttf')  format('truetype'),
         url('fonts/Affogato-Medium.otf')  format('opentype'),
         url('fonts/Affogato-Medium.svg') format('svg');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'Affogato';
    src: url('fonts/Affogato-Regular.eot');
    src: url('fonts/Affogato-Regular.eot?#iefix') format('embedded-opentype'),
    	 url('fonts/Affogato-Regular.woff') format('woff'),
         url('fonts/Affogato-Regular.woff2') format('woff2'),
         url('fonts/Affogato-Regular.ttf')  format('truetype'),
         url('fonts/Affogato-Regular.otf')  format('opentype'),
         url('fonts/Affogato-Regular.svg') format('svg');
}
@font-face {
    font-family: 'Affogato';
    src: url('fonts/Affogato-Light.eot');
    src: url('fonts/Affogato-Light.eot?#iefix') format('embedded-opentype'),
    	 url('fonts/Affogato-Light.woff') format('woff'),
         url('fonts/Affogato-Light.woff2') format('woff2'),
         url('fonts/Affogato-Light.ttf')  format('truetype'),
         url('fonts/Affogato-Light.otf')  format('opentype'),
         url('fonts/Affogato-Light.svg') format('svg');
    font-weight: 100;
    font-style: normal;
}
@font-face {
	font-family: 'Font Awesome 5 Free';
	font-style: normal;
	font-weight: 400;
	font-display: block;
	src: url("/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-regular-400.eot");
	src: url("/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"),
	     url("/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-regular-400.woff2") format("woff2"),
	     url("/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-regular-400.woff") format("woff"),
	     url("/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-regular-400.ttf") format("truetype"),
	     url("/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-regular-400.svg#fontawesome") format("svg");
}
@font-face {
	font-family: 'Font Awesome 5 Free';
	font-style: normal;
	font-weight: 900;
	font-display: block;
	src: url("/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-solid-900.eot");
	src: url("/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"),
	     url("/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-solid-900.woff2") format("woff2"),
	     url("/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-solid-900.woff") format("woff"),
	     url("/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-solid-900.ttf") format("truetype"),
	     url("/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-solid-900.svg#fontawesome") format("svg");
}
html{
	scroll-behavior: smooth;
}
body *{
	font-family: Affogato, sans-serif;
}
.hello,
.hello *{
	font-family: Hello, sans-serif;
}
.adam,
.adam *{
	font-family: Adam, sans-serif;
}
.hidden{
	display: none;
}
input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea{
	border-radius: 0;
}
.site-navigation #menu-main-en,
.site-navigation #menu-main{
	border-bottom: solid 5px transparent;
	transition: .3s;
}
body.home .site-navigation #menu-main-en,
body.home .site-navigation #menu-main{
	background: rgba(255, 255, 255, .8);
	border-top-left-radius: 20px;
}
body.home:not(.scrolled) .site-navigation #menu-main-en,
body.home:not(.scrolled) .site-navigation #menu-main{
	font-weight: 500;
	padding: 4px 40px 0;
}
body.home.scrolled .site-navigation #menu-main-en,
body:not(.home) .site-navigation #menu-main-en,
body.home.scrolled .site-navigation #menu-main,
body:not(.home) .site-navigation #menu-main{
	border-bottom-color: rgb(211, 196, 169);
}
body:not(.home){
	padding-top: 157px;
}
.site-navigation #menu-main-en a,
.site-navigation #menu-main a{
	color: #000;
	padding: 5px 15px;
}
.site-navigation #menu-main-en .current-menu-item a,
.site-navigation #menu-main .current-menu-item a{
	color: #fff;
	background: rgb(186, 17, 102);
	border-top-left-radius: 20px;
}
#site-header{
	padding-top: 10px;
	padding-bottom: 6px;
	transition: background .3s, padding .3s;
}
.custom-logo-link{
	position: relative;
}
.custom-logo-link:after{
	content: "";
	width: 100%;
	display: block;
	padding-top: 46%;
	background: url(img/logo_Dimora_BF.png) center center/contain no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 1;
	transition: .3s;
}
body:not(.home) .custom-logo-link:after,
body.scrolled .custom-logo-link:after{
	opacity: 0;
}
body.admin-bar #site-header{
	margin-top: 32px;
}
@media screen and (max-width: 782px){
	body.admin-bar #site-header{
		margin-top: 46px;
	}
}
body #site-header{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
}
body.scrolled #site-header,
body:not(.home) #site-header{
	box-shadow: 0 4px 4px 0 rgba(0, 0, 0, .1);
	background: #fff;
}
body.home:not(.scrolled) #site-header{
	padding-top: 50px;
}
.custom-logo{
	max-width: 180px;
	transition: .3s;
	opacity: 1;
}
body.home:not(.scrolled) .custom-logo{
	max-width: 270px;
	opacity: 0;
}
#site-footer{
	position: relative;
}
#site-footer:after{
	content: "";
	background: url(img/owners.png) right bottom/contain no-repeat;
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 570px;
	pointer-events: none;
}
#site-footer .elementor-column{
	z-index: 1;
}
.page-gallery .gallery{
	white-space: nowrap;
	margin: 0 -10px 0 0;
}
.page-gallery .gallery-item{
	margin: 0;
	width: 100%;
	display: inline-block;
	transition: .3s;
}
.page-gallery .gallery-columns-2 .gallery-item{
	max-width: 50%;
}
.page-gallery .gallery-item a,
.post-thumbnail a{
	display: inline-block;
	border: solid 3px rgb(186, 17, 102);
	border-radius: 30px 0;
	overflow: hidden;
}
.category-affitto .page-gallery .prev:before,
.category-affitto .page-gallery .prev:after,
.category-affitto .page-gallery .next:before,
.category-affitto .page-gallery .next:after,
.category-affitto .page-gallery .gallery-item a,
.category-affitto .post-thumbnail a,
.category-rent .page-gallery .prev:before,
.category-rent .page-gallery .prev:after,
.category-rent .page-gallery .next:before,
.category-rent .page-gallery .next:after,
.category-rent .page-gallery .gallery-item a,
.category-rent .post-thumbnail a{
	border-color: rgb(211, 196, 169);
}
.category-affitto .map-link,
.category-affitto .post-content h1,
.category-affitto .post-content h2,
.category-affitto .page-contact h2
.page-content .post.category-affitto .post-content .map-link:not(:hover) .map-link-icon,
.category-affitto .entry-title a,
.category-affitto .entry-title + h2,
.category-rent .map-link,
.category-rent .post-content h1,
.category-rent .post-content h2,
.category-rent .page-contact h2
.page-content .post.category-rent .post-content .map-link:not(:hover) .map-link-icon,
.category-rent .entry-title a,
.category-rent .entry-title + h2{
	color: rgb(211, 196, 169);
}
.category-affitto .contact-form .btn,
.category-affitto .contact-form input[type="submit"],
.category-rent .contact-form .btn,
.category-rent .contact-form input[type="submit"]{
	background-color: rgb(211, 196, 169);
}
.page-gallery .gallery-item a{
	margin: 0 10px 20px 0;
	width: calc(100% - 10px);
}
.page-gallery .gallery-item img,
.post-thumbnail img{
	display: block;
}
.page-gallery .gallery-caption{
	display: none;
}
.page-gallery{
	position: relative;
	overflow: hidden;
}
.page-gallery .prev,
.page-gallery .next{
	position: absolute;
	top: 0;
	margin-top: 30%;
	width: 50px;
	height: 30px;
	cursor: pointer;
}
.page-gallery .prev{
	left: 0;
}
.page-gallery .next{
	right: 0;
}
.page-gallery .prev:before,
.page-gallery .prev:after,
.page-gallery .next:before,
.page-gallery .next:after{
	content: "";
	border-top: solid 3px rgb(186, 17, 102);
	border-right: solid 3px rgb(186, 17, 102);
	position: absolute;
	width: 20px;
	height: 20px;
	top: 5px;
}
.page-gallery .prev:before,
.page-gallery .prev:after{
	left: 12px;
	transform: rotate(-135deg);
}
.page-gallery .prev:after{
	left: 30px;
}
.page-gallery .next:before,
.page-gallery .next:after{
	right: 12px;
	transform: rotate(45deg);
}
.page-gallery .next:after{
	right: 30px;
}
.post-content h1,
.post-content h2{
	font-size: 40px;
}
.post-content h1,
.post-content h2,
.page-contact h2{
	color: rgb(186, 17, 102);
	padding: 0 !important;
	font-weight: bold;
	margin-top: 0;
	margin-bottom: .5rem;
}
.page-content a{
	text-decoration: none;
}
.page-contact h2{
	color: #D3C4A9;
	font-weight: normal;
}
.page-header h1 + h2,
.page-header h2 + h2{
	font-weight: normal;
	font-size: 1.5rem;
	margin-bottom: 1.5rem;
}
.post-content .address-wrap{
	overflow: hidden;
}
.post-content .address{
	float: left;
}
.post-content .map-link{
	float: right;
}
.page-content .post .post-content .map-link:not(:hover){
	color: rgb(178, 178, 178);
}
.page-content .post .post-content .map-link:not(:hover) .map-link-icon{
	color: #c36;
}
.page-content .post .post-content .map-link-icon{
	width: 2em;
	height: 2em;
}
.post-content .map-link-icon{
	width: 1em;
	height: 1em;
	vertical-align: middle;
	fill: currentColor;
	overflow: hidden;
}
.post-content .page-meta,
.page-energy-meta,
.page-extra-meta,
.page-near-meta{
	list-style: none;
	margin: 0;
	padding: 0;
}
.post-content .page-meta{
	margin-top: 30px;
}
.page-content .post .page-meta{
	font-size: 14px;
	margin: 0 0 20px;
	padding: 2px 8px;
	background: rgb(242, 236, 226);
	border-bottom-right-radius: 30px;
}
.post-content .page-meta li,
.page-energy-meta li,
.page-extra-meta li,
.post-content .page-number-price,
.post-content .page-number-contact{
	display: flex;
	justify-content: start;
	align-items: end;
}
.post-content .page-meta li,
.page-energy-meta li{
	align-items: start;
}
.post-content .page-number-contact{
	justify-content: space-between;
}
.post-content .page-number-contact .page-number{
	width: 35%;
}
.post-content .page-number-contact .contact-form{
	width: 60%;
}
.post-content .page-meta li,
.page-energy-meta li,
.page-extra-meta li,
.page-near-meta li,
.post-content .page-number-price{
	margin-top: 12px;
}
.post-content .page-number-price{
	margin-top: 20px;
}
.post-content .page-meta li,
.page-energy-meta li,
.page-extra-meta li,
.page-near-meta li:before{
	border-bottom: solid 2px rgb(214, 214, 214);
}
.page-content .post .page-meta li{
	border: none;
	display: inline-block;
	margin: 0 20px 0 0;
}
.page-extra-meta li{
	display: inline-block;
	margin-right: 20px;
}
.post-content .page-number,
.post-content .page-meta li:before,
.page-energy-meta li:before,
.post-content .page-number:before{
	width: 40%;
}
.post-content .page-meta li:before,
.page-energy-meta li:before,
.page-near-meta li:before,
.post-content .page-number:before{
	content: attr(data-label);
}
.page-content .post .page-meta li[data-label="Prezzo"] span{
	font-size: 16px;
	font-weight: 600;
}
.page-content .post .page-meta li[data-label="Prezzo"]:before{
	display: none;
}
.post-content .page-meta li span,
.page-energy-meta li span{
	width: 60%;
}
.page-near-meta li:before,
.page-near-meta li span{
	display: block;
}
.post-content .page-number,
.post-content .page-meta li span,
.page-energy-meta li span,
.page-near-meta li span,
.page-extra-meta li span{
	font-weight: 500;
}
.post-content .page-meta li span:before,
.page-energy-meta li span:before,
.page-near-meta li span:before,
.post-content .page-number span:before,
.post-content .page-price span:before,
.featured .footer span:before{
	content: attr(data-prefix);
}
.post-content .page-meta li span:after,
.page-energy-meta li span:after,
.page-near-meta li span:after,
.post-content .page-number span:after,
.post-content .page-price span:after,
.featured .footer span:after{
	content: attr(data-postfix);
}
.post-content .page-price{
	color: rgb(112, 112, 112);
	background: rgb(242, 236, 226);
	font-size: 2rem;
	font-weight: 600;
	padding: 4px;
	border-radius: 30px 0;
	width: 60%;
	text-align: center;
}
.page-content-wrap{
	clear: both;
	background: rgb(242, 236, 226);
	margin: 50px -10px;
	overflow: hidden;
}
.page-content-wrap:nth-last-child(1){
	margin-bottom: 0;
}
.top-border:before{
	content: "";
	display: block;
	border-top: solid 70px #fff;
	border-left: solid 100vw rgb(242, 236, 226);
	padding-bottom: 10px;
}
.bottom-border:after{
	content: "";
	display: block;
	border-bottom: solid 70px #fff;
	border-left: solid 100vw rgb(242, 236, 226);
	padding-top: 10px;
}
.before-footer-form{
	background: rgb(242, 236, 226);
	margin-bottom: 100px;
}
.before-footer-form .contact-form{
	padding: 10px 20px 5px 20px;
	background-color: #FFFFFF;
	border: solid 3px #D3C4A9;
	border-radius: 30px 0px;
}
.before-footer-form h2{
	text-align: center;
}
.before-footer-form h2.weight-normal{
	font-weight: 400;
}
.page-content-wrap .page-content-inner{
	padding: 0 10px;
}
.page-energy-meta-wrap,
.page-extra-meta-wrap,
.page-near-meta-wrap,
.page-map-wrap{
	margin-bottom: 50px;
}
.page-content-inner,
.page-map-wrap{
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
.page-map{
	margin-top: -120px;
}
.page-map #posizione{
	padding-top: 120px;
}
.page-content-wrap .page-content,
.page-map,
.page-contact{
	width: 100%;
}
.page-near-meta-wrap,
.page-map-wrap{
	clear: both;
}
.page-content-wrap .page-content h2,
.page-energy-meta-wrap h2,
.page-extra-meta-wrap h2,
.page-near-meta-wrap h2,
.page-map-wrap .page-map h2{
	margin: 20px 0 0;
	color: rgb(186, 17, 102);
	font-weight: normal;
}
.page-content-wrap .page-content h2{
	margin: 0 0 20px;
}
.page-contact h2,
.page-contact .h2{
	font-size: 28px;
}
.page-map-wrap .page-contact h2,
.page-map-wrap .page-contact .h2{
	color: #fff;
}
.page-map-wrap #map{
	height: 400px;
	max-height: 80vh;
	width: 100%;
	border: solid 1px rgb(112, 112, 112);
	border-radius: 30px 0;
	margin-top: 10px;
}
.wpcf7-form.sent .fields{
	display: none !important;
}
.contact-form form > div.fields{
	display: flex;
	flex-wrap: wrap;
	justify-content: end;
	position: relative;
}
.contact-form .wpcf7-form-control-wrap,
.contact-form input[type="submit"]{
	width: 100%;
}
.contact-form .btn,
.contact-form input[type="submit"]{
	outline: none;
	border-radius: 30px 0;
	background: var(--e-global-color-accent);
	font-size: 16px;
	font-weight: 500;
	line-height: 24px;
	padding: 12px 24px;
	margin-bottom: 10px;
	color: #fff;
}
.contact-form .btn{
	margin: 0 0 0 auto;
	max-width: 240px;
	display: block;
	text-align: center;
}
.page-number-contact .contact-form input[type="submit"]{
	margin: 0;
	padding-right: 0;
	padding-left: 0;
}
.contact-form input[type="submit"] ~ input[type="submit"]{
	background: rgb(112, 112, 112);
}
.contact-form input::placeholder{
	color: #000;
	font-weight: 500;
}
.contact-form input,
.contact-form textarea{
	border: none;
	outline: none;
	padding-left: 0;
	padding-right: 0;
	background: transparent;
}
.contact-form textarea{
	resize: none;
	max-height: 64px;
}
.wpcf7-spinner{
	position: absolute;
	right: 12px;
	bottom: 12px;
	margin: 0;
}
.wpcf7-not-valid-tip{
	position: absolute;
	z-index: 10;
	bottom: 0;
	font-size: 10px;
	left: 0;
	color: var(--e-global-color-accent);
}
.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output{
	border: none;
	text-align: center;
	color: var(--e-global-color-accent);
	font-size: 14px;
	font-weight: 500;
	margin: 30px 0;
}
.page-contact .wpcf7 form.sent .wpcf7-response-output,
.page-contact .wpcf7 form.invalid .wpcf7-response-output,
.page-contact .wpcf7 form.unaccepted .wpcf7-response-output,
.page-contact .wpcf7 form.payment-required .wpcf7-response-output{
	top: 15px;
}
.page-number-contact .wpcf7 form.sent .wpcf7-response-output,
.page-number-contact .wpcf7 form.invalid .wpcf7-response-output,
.page-number-contact .wpcf7 form.unaccepted .wpcf7-response-output,
.page-number-contact .wpcf7 form.payment-required .wpcf7-response-output{
	top: 0;
}
.wpcf7 form.sent .wpcf7-response-output{
	color: darkgreen;
}
.page-content-wrap .contact-form,
.page-map-wrap .contact-form,
.page-number-contact .contact-form{
	background: #fff;
	padding: 40px 30px 50px;
	position: relative;
	overflow: hidden;
}
.page-number-contact .contact-form{
	padding: 20px 0 0;
}
.page-map-wrap .contact-form{
	background: rgb(211, 196, 169);
	margin-top: 50px;
}
.page-content-wrap .contact-form:before,
.page-content-wrap .contact-form:after,
.page-map-wrap .contact-form:before,
.page-map-wrap .contact-form:after{
	content: "";
	position: absolute;
}
.page-content-wrap .contact-form:before,
.page-map-wrap .contact-form:before{
	border-top: solid 70px rgb(242, 236, 226);
	border-left: solid 100vw transparent;
	top: 0;
	left: 0;
}
.page-content-wrap .contact-form:after,
.page-map-wrap .contact-form:after{
	border-bottom: solid 70px rgb(242, 236, 226);
	border-left: solid 100vw transparent;
	bottom: 0;
	left: 0;
}
.page-map-wrap .contact-form:before{
	border-top-color: #fff;
}
.page-map-wrap .contact-form:after{
	border-bottom-color: #fff;
}
.page-content-wrap .contact-form textarea,
.page-map-wrap .contact-form textarea{
	max-height: 74px;
	padding: 10px 30px;
	margin-bottom: 4px;
	border-style: solid;
	border-width: 3px 3px 3px 3px;
	border-color: #D3C4A9;
	border-radius: 30px 0px 30px 0px;
}
.page-map-wrap .contact-form textarea{
	background: #fff;
}
.page-content .post{
	padding: 50px 0;
}
.page-content .post + .post{
	border-top: solid 1px rgb(134, 134, 134);
}
.search-form:not(.full){
	max-width: 600px;
}
.search-form{
	margin: auto;
	position: relative;
	z-index: 100;
	display: flex;
	flex-direction: column;
	align-items: stretch;
}
.search-form.full{
	background: rgb(242, 236, 226);
	padding: 30px 0;
}
.search-form.full .row{
	background: transparent;
}
.search-form .category{
	padding: 0;
	margin: 0 0 -10px;
	list-style: none;
	display: flex;
	justify-content: center;
	position: relative;
	z-index: 100;
}
.search-form.full .category{
	align-self: start;
	justify-content: center;
}
.search-form input[name="category"]{
	display: none;
}
.search-form .category li label{
	color: #fff;
	background: rgb(186, 17, 102);
	text-transform: uppercase;
	font-weight: 500;
	padding: 10px 20px;
	margin: 0 2px;
	position: relative;
}
.search-form .category li:nth-child(1) label{
	border-top-left-radius: 20px;
}
.search-form .category li:nth-last-child(1) label{
	border-top-right-radius: 20px;
}
.search-form .category li:nth-child(even) label{
	background: rgb(211, 196, 169);
}
.search-form #more{
	display: none;
}
.search-form .more:after,
.search-form .category li label:after{
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translate(-50%, 100%);
	border-style: solid;
	border-width: 0 16px;
	border-color: transparent;
	border-top-color: rgb(186, 17, 102);
	transition: .3s;
}
.search-form .more:after{
	border-width: 0 30px;
	opacity: 0;
}
.search-form .category li:nth-child(even) label:after{
	border-top-color: rgb(211, 196, 169);
}
.search-form .category li label[for="category-vendita"],
.search-form .category li label[for="category-sale"]{
	background: rgb(186, 17, 102) !important;
}
.search-form .category li label[for="category-vendita"]:after,
.search-form .category li label[for="category-sale"]:after{
	border-top-color: rgb(186, 17, 102) !important;
}
.search-form .category li label[for="category-affitto"],
.search-form .category li label[for="category-rent"]{
	background: rgb(211, 196, 169) !important;
}
.search-form .category li label[for="category-affitto"]:after,
.search-form .category li label[for="category-rent"]:after{
	border-top-color: rgb(211, 196, 169) !important;
}
.search-form input#category-affitto:checked ~ ul.category label[for="category-affitto"]:after,
.search-form input#category-vendita:checked ~ ul.category label[for="category-vendita"]:after,
.search-form input#category-rent:checked ~ ul.category label[for="category-rent"]:after,
.search-form input#category-sale:checked ~ ul.category label[for="category-sale"]:after{
	border-top-width: 10px;
}
.search-form input#category-affitto:checked ~ .row .affitto,
.search-form input#category-vendita:checked ~ .row .vendita,
.search-form input#category-rent:checked ~ .row .affitto,
.search-form input#category-sale:checked ~ .row .vendita{
	display: none;
}
.search-form .row{
	padding: 10px;
	border-top-left-radius: 30px;
	border-bottom-right-radius: 30px;
	background: rgb(255, 255, 255, .7);
	display: flex;
}
.search-form .more-fields{
	align-self: end;
	margin: 10px 100px 0 0;
	opacity: 0;
	pointer-events: none;
	transition: .3s;
}
.search-form #more:checked ~ .more-fields{
	opacity: 1;
	pointer-events: auto;
}
.search-form .row .select{
	margin-right: 10px;
	position: relative;
}
.search-form .row .select:nth-last-child(1){
	margin-right: 0;
}
.search-form .row .select:before,
.search-form .row .select:after{
	content: "";
	position: absolute;
	width: 8px;
	height: 8px;
	right: 22px;
	border-top: solid 1px rgb(183, 183, 183);
	border-right: solid 1px rgb(183, 183, 183);
}
.search-form .row .select:before{
	top: 18px;
	transform: rotate(-45deg);
}
.search-form .row .select:after{
	bottom: 18px;
	transform: rotate(135deg);
}
.search-form .row .select.cosa{
	flex-grow: 2;
}
.search-form .row select{
	appearance: none;
	border: solid 1px #000;
	outline: none;
	height: 50px;
	border-bottom-right-radius: 20px;
	border-top-left-radius: 20px;
	padding: 0 50px 0 20px;
}
.search-form .more{
	width: 60px;
	height: 50px;
	margin-right: 2px;
	border: solid 1px #000;
	background: #fff;
	position: relative;
	z-index: 10;
}
.search-form.full .more{
	padding: 0 10px 0 55px;
	width: auto;
	line-height: 50px;
	white-space: nowrap;
}
.search-form .more span{
	width: 30px;
	height: 30px;
	border: solid 1px rgb(112, 112, 112);
	border-color: rgb(186, 17, 102);
	border-radius: 4px;
	position: absolute;
	top: 50%;
	left: 15px;
	transform: translateY(-50%);
	cursor: pointer;
}
.search-form .more span:before,
.search-form .more span:after{
	content: "";
	width: 20px;
	border-top: solid 1px rgb(112, 112, 112);
	border-color: rgb(186, 17, 102);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: .3s;
}
.search-form .more span:after{
	transform: translate(-50%, -50%) rotate(90deg);
	opacity: 1;
}
.search-form #more:checked + .row .more span,
.search-form #more:checked + .row .more span:before{
	border-color: rgb(186, 17, 102);
}
.search-form #more:checked + .row .more:after{
	border-top-width: 20px;
	opacity: 1;
}
.search-form #more:checked + .row .more span:after{
	opacity: 0;
}
.search-form button[type="submit"]{
	color: #fff;
	font-weight: bold;
	background: rgb(186, 17, 102);
	height: 50px;
	padding: 0 30px;
	border-bottom-right-radius: 20px;
	outline: none;
	position: relative;
}
.search-form.full button[type="submit"]{
	padding-right: 60px;
}
.search-form button[type="submit"]:before{
	content: "";
	width: 22px;
	height: 3px;
	background: #fff;
	position: absolute;
	right: 15px;
	top: 22px;
	transform: rotate(45deg);
	transform-origin: left;
}
.search-form button[type="submit"]:after{
	content: "";
	width: 22px;
	height: 22px;
	border: solid 3px #fff;
	border-radius: 50%;
	background: rgb(186, 17, 102);
	position: absolute;
	right: 15px;
	top: 22px;
	transform: translate(-50%, -50%);
}
.search-form .popup{
	width: 100%;
	max-width: 1000px;
	border: solid 1px #000;
	border-radius: 0 20px;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	background: #fff;
	margin: 10px 0;
	padding: 10px 20px;
}
.search-form.full .popup{
	margin-top: -20px;
}
.search-form .bg{
	background: rgba(255, 255, 255, .5);
	position: absolute;
	top: 100%;
	left: 50%;
	width: calc(100vw - 17px);
	transform: translateX(-50%);
	margin: 0;
}
.search-form .bg{
	min-height: 600px;
}
#content{
	min-height: 700px;
}
.search-form .popup .row label{
	background: rgb(242, 236, 226);
	border-radius: 20px 0;
}
.search-form .popup .row.radio{
	padding-bottom: 0;
}
.search-form .popup .row.radio label,
.search-form .popup .row label.select{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-left: 30px;
	margin-right: 30px;
	height: 50px;
	border: solid 2px rgb(242, 236, 226);
}
.search-form .popup .row label.select{
	width: 50%;
}
.search-form .popup .row.radio label{
	padding-left: 20px;
	padding-right: 20px;
	min-width: 100px;
}
.search-form .popup .row.radio ul{
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	padding: 0;
}
.search-form .popup .row.radio label[for]{
	background: transparent;
	transition: .3s;
	margin-right: 20px;
	margin-bottom: 10px;
	min-width: 0;
}
.search-form label.select select{
	border: none;
	border-radius: 0;
	background: transparent;
	width: auto;
}
.search-form .popup .row.radio input{
	display: none;
}
.search-form .popup .row.radio input:checked + label{
	border-color: rgb(186, 17, 102);
	background: rgb(186, 17, 102);
	color: #fff;
}
.search-form .popup label.close{
	position: absolute;
	top: 10px;
	right: 15px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgb(211, 196, 169);
}
.search-form .popup label.close:before,
.search-form .popup label.close:after{
	content: "";
	width: 14px;
	border-top: solid 2px #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
}
.search-form .popup label.close:after{
	transform: translate(-50%, -50%) rotate(-45deg);
}
.pagination{
	display: flex;
	justify-content: space-between;
	padding: 12px 20px;
	max-width: 300px;
	background: rgb(175, 175, 175);
	border-radius: 20px 0;
}
.pagination .nav-previous,
.pagination .nav-next{
	display: inline-block;
}
.pagination a{
	color: #fff;
	color: #fff;
	display: flex;
}
.pagination .nav-next a{
	flex-direction: row-reverse;
}
.pagination .meta-nav{
	margin: 0 5px;
}
.featured-wrapper{
	overflow: hidden;
	margin: 0 1%;
}
.featured{
	display: flex;
	justify-content: space-between;
	list-style: none;
	padding: 0;
	transition: .3s;
}
.featured > li{
	overflow: hidden;
	background: #fff;
	border: solid 2px rgb(186, 17, 102);
	border-radius: 20px 0;
	position: relative;
	display: flex;
	flex-direction: column;
}
.featured > li:before{
	content: "";
	order: -1;
	flex-grow: 10;
}
.featured .category{
	position: absolute;
	z-index: 9;
	left: 0;
	top: 0;
	padding: 10px 20px;
	border-bottom-right-radius: 20px;
	background: rgb(186, 17, 102);
	text-transform: uppercase;
	font-weight: 500;
	color: #fff;
}
.post-thumbnail a,
.featured .img{
	display: block;
	padding-top: 60%;
	position: relative;
	overflow: hidden;
	order: -2;
}
.post-thumbnail img,
.featured img{
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	max-width: none;
	width: 102%;
	height: auto;
}
.post-thumbnail img.narrow,
.featured img.narrow{
	width: auto;
	height: 100%;
}
.featured h3{
	text-transform: uppercase;
	color: rgb(186, 17, 102);
	font-size: 20px;
	font-weight: 600;
	margin: 10px 20px 0;
	line-height: 1;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.featured > li.affitto,
.featured > li.rent{
	border-color: rgb(211, 196, 169);
}
.featured .affitto .category,
.featured .rent .category{
	background: rgb(211, 196, 169);
}
.featured .affitto h3,
.featured .rent h3{
	color: rgb(211, 196, 169);
}
.featured h3.subtitle{
	font-weight: 400;
	font-size: 18px;
	margin-top: 0;
	text-transform: lowercase;
	height: 18px;
}
.featured a{
	display: block;
	background: rgb(242, 236, 226);
	color: #000;
	font-weight: 600;
	text-align: right;
	line-height: 12px;
	padding: 0 20px;
	margin: 10px 0;
}
.featured a:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10;
}
.featured a:after{
	content: ">>";
	font-size: 20px;
	font-weight: 400;
	margin-left: 4px;
	display: inline-block;
	vertical-align: bottom;
}
.featured .footer{
	padding: 0;
	display: flex;
	justify-content: space-between;
	list-style: none;
	margin: 10px 20px;
	text-transform: uppercase;
	font-size: 12px;
	line-height: 30px;
	white-space: nowrap;
}
.featured .footer li:before{
	content: "";
	background: url(img/target.svg) center center/contain no-repeat;
	width: 30px;
	height: 30px;
	display: inline-block;
	vertical-align: middle;
	opacity: .4;
	margin-top: -2px;
}
.featured .footer li.area:before{
	background-image: url(img/area.svg);
	width: 18px;
}
.featured .footer li.price:before{
	background-image: url(img/price.svg);
	width: 22px;
}
.featured-nav{
	display: flex;
	justify-content: space-between;
	width: 358px;
	max-width: 100%;
	padding: 10px 20px;
	margin: 20px auto;
	border-radius: 20px 0;
	background: rgb(175, 175, 175);
	list-style: none;
	font-size: 24px;
}
.single .featured-nav{
	margin-right: 1%;
}
.featured-nav a{
	color: #fff;
}
.featured-nav a.prev,
.featured-nav a.next{
	letter-spacing: 5px;
}
.single main + section{
	display: none;
}
.site-navigation-toggle-holder{
	padding: 0;
}
.site-navigation-toggle-holder .site-navigation-toggle{
	background: transparent;
	color: #c36;
}
#site-header .icons{
	display: flex;
	align-items: center;
	justify-content: end;
	width: calc(100vw - 235px);
	max-width: 250px;
}
#site-header a[href^="mailto:"],
#site-header a[href^="tel:"],
#site-header a[href^="https://wa.me/"]{
	font-size: 0;
	margin: 2px;
}
#site-header a[href^="mailto:"]:before,
#site-header a[href^="tel:"]:before,
#site-header a[href^="https://wa.me/"]:before{
	content: "\f232";
	display: block;
	font-family: "Font Awesome 5 Brands";
	font-weight: 400;
	font-size: 26px;
	color: #fff;
	background: rgb(112, 112, 112);
	border-radius: 50%;
	width: 36px;
	height: 36px;
	line-height: 36px;
	text-align: center;
}
#site-header a[href^="mailto:"]:before{
	content: "\f0e0";
	font-family: "Font Awesome 5 Free";
	font-size: 20px;
	background: rgb(211, 196, 169);
}
#site-header a[href^="tel:"]:before{
	content: "\f879";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 20px;
	background: rgb(186, 17, 102);
}
body:not(.home) section.popup-bg{
	position: fixed;
	z-index: 5000;
	top: 0;
	left: 0;
	right: 0;
	height: 100vh;
	background: rgba(0, 0, 0, .5);
}
body:not(.home) section.popup{
	border-radius: 0px 20px 0px 20px;
	padding: 30px;
	width: 600px !important;
	position: fixed;
	z-index: 5001;
	top: 50%;
	left: 50%;
	max-width: 90vw;
	transform: translate(-50%, -50%);
	background: #F2ECE2 !important;
}
body:not(.home) section.popup .contact-form{
	padding: 10px 20px 5px 20px;
	background-color: #FFFFFF;
	border-style: solid;
	border-width: 3px 3px 3px 3px;
	border-color: #D3C4A9;
	border-radius: 30px 0px 30px 0px;
}
body:not(.home) section.popup .close{
	position: absolute;
	top: 10px;
	right: 8px;
	z-index: 1000;
}
body:not(.home) section.popup .close a{
	background-color: #D3C4A9;
	border-radius: 50%;
	padding: 11px;
	display: inline-block;
}
section.popup a{
	position: relative;
}
section.popup a:before,
section.popup a:after{
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 14px;
	border-top: solid 2px rgb(242, 236, 226);
	transform: translate(-50%, -50%) rotate(45deg);
}
section.popup a:after{
	transform: translate(-50%, -50%) rotate(-45deg);
}
.post-thumbnail,
.main-image{
	position: relative;
}
.sold,
.rented{
	position: absolute;
	z-index: 8;
	right: 0;
	bottom: 50%;
	color: rgb(186, 17, 102);
	font-weight: bold;
	transform: rotate(-45deg);
	text-shadow: 2px 2px 2px rgb(0 0 0 / 80%);
	font-size: 30px;
}
.rented{
	color: rgb(211, 196, 169);
}
.featured .sold,
.featured .rented{
	font-size: 24px;
}
.post-thumbnail .sold,
.post-thumbnail .rented{
	right: 3%;
	bottom: 10%;
}
.search .post-thumbnail .sold,
.search .post-thumbnail .rented{
	bottom: 16%;
}
.main-image .sold,
.main-image .rented{
	bottom: calc(10% + 35px);
}
.dialog-type-lightbox{
	position: fixed !important;
}
.site-navigation ul.menu li ul{
	background: transparent;
}
.site-navigation ul.menu li.menu-item-has-children:after{
	display: none;
}
.page-content.site-main{
	display: flex;
	flex-wrap: wrap;
}
.page-content.site-main .page{
	width: 31%;
	margin: 1%;
}
@media (min-width: 576px){
	.search-form.full{
		margin: 0 calc((500px - 100vw + 18px) / 2);
		padding: 30px calc((100vw - 500px + 18px) / 2);
	}
	.page-gallery .gallery{
		margin-right: -20px;
	}
	.page-gallery .gallery-item a{
		margin-right: 20px;
		width: calc(100% - 20px);
	}
	.top-border:before,
	.bottom-border:after{
		border-left-width: calc(100vw - 20px);
	}
	.page-content-wrap{
		margin: 50px calc((500px - 100vw + 18px) / 2);
	}
	.page-content-wrap .page-content-inner{
		padding: 0 calc((100vw - 500px - 18px) / 2);
	}
	.page-near-meta{
		display: flex;
		flex-wrap: wrap;
		margin-right: -30px;
	}
	.page-near-meta li{
		width: calc(50% - 30px);
		margin-right: 30px;
	}
}
@media (max-width: 767px){
	.page-content.site-main .page{
		width: 100%;
		margin: 0 0 50px;
	}
	#site-footer{
		text-align: center;
		font-size: 12px;
	}
	#site-footer > div > section:nth-child(1){
		margin-top: 290px;
		margin-bottom: 0px;
		padding: 120px 0px 0px 0px;
	}
	.mobile-40{
		width: 40% !important;
	}
	.mobile-50{
		width: 50% !important;
	}
	.mobile-60{
		width: 60% !important;
	}
	.mobile-100{
		width: 100% !important;
	}
	.site-navigation-dropdown ul.menu li.wpml-ls-item a + ul{
		position: absolute;
		left: 100px;
		top: 0;
	}
	.site-navigation-dropdown ul.menu.menu>li.wpml-ls-item a + ul li{
		max-height: none;
		transform: none;
	}
	body:not(.elementor-editor-active) section.popup-bg{
		display: none !important;
	}
	body #site-header{
		box-shadow: 0 4px 4px 0 rgb(0 0 0 / 10%);
		background: #fff;
		padding-top: 10px !important;
	}
	body .custom-logo{
		max-width: 180px !important;
		opacity: 1 !important;
	}
	body .custom-logo-link:after{
		display: none;
	}
	.home header + .elementor > section:nth-child(1){
		background-image: none !important;
	}
	.home header + .elementor > section:nth-child(1) .hello{
		background-color: #F2ECE2;
		background-image: url(/wp-content/uploads/2022/10/Home_dimora-scaled.jpg);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: cover;
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 300px;
		margin: -10px -10px 20px;
		width: auto;
	}
	.home header + .elementor > section:nth-child(1) .hello .elementor-heading-title{
		white-space: pre;
	}
	.home header + .elementor > section:nth-child(1) .elementor-widget-wrap{
		flex-direction: column-reverse;
	}
	.mobile-red .elementor-heading-title{
		color: rgb(186, 17, 102) !important;
	}
	.mobile-bold .elementor-heading-title{
		font-weight: bold !important;
	}
	.contact-form input[type="submit"]{
		background: rgb(112, 112, 112);
	}
	.contact-form input[type="submit"] ~ input[type="submit"] {
		display: none;
	}
	.contact-form textarea{
		border: solid 1px rgb(112, 112, 112);
		border-radius: 30px 0;
		padding: 4px 20px;
		text-align: center;
	}
	#site-footer:after{
		bottom: calc(100% - 120px);
		height: 400px;
		background-position: center bottom;
	}
	.page-content-inner > h2,
	.single .featured-nav{
		margin: 20px auto;
	}
	.featured-wrapper{
		display: flex;
		flex-direction: column-reverse;
	}
	.home .featured-wrapper{
		flex-direction: column;
	}
	.sold,
	.rented{
		font-size: 20px;
	}
	.search .post-thumbnail .sold,
	.search .post-thumbnail .rented{
		bottom: 14%;
	}
	.page-content-wrap .contact-form:before,
	.page-map-wrap .contact-form:before,
	.top-border:before{
		border-top-width: 30px;
	}
	.page-content-wrap .contact-form:after,
	.page-map-wrap .contact-form:after,
	.bottom-border:after{
		border-bottom-width: 30px;
	}
}
@media (min-width: 768px){
	.single .featured-wrapper{
		margin: -90px -1% 100px;
		width: 102%;
	}
	.search-form .row select[name="cosa"]{
		border-top-left-radius: 0;
	}
	#site-header .icons,
	body:not(.home) #site-footer:after{
		display: none;
	}
	.footer-info > div > div + div + div{
		width: 40% !important;
	}
	.footer-info > div > div + div + div + div{
		width: 30% !important;
	}
	body:not(.elementor-editor-active) section.popup-bg{
		position: fixed;
		z-index: 5000;
		top: 0;
		left: 0;
		right: 0;
	}
	body:not(.elementor-editor-active) section.popup{
		position: fixed;
		z-index: 5001;
		top: 50%;
		left: 50%;
		width: 1000px;
		max-width: 90vw;
		transform: translate(-50%, -50%);
		background: #F2ECE2 !important;
	}
	.search-form.full{
		margin: 0 calc((600px - 100vw + 18px) / 2);
		padding: 30px calc((100vw - 600px + 18px) / 2);
	}
	.page-content-wrap .page-content,
	.page-map{
		width: 50%;
	}
	.page-content + .page-contact,
	.page-map + .page-contact{
		width: 45%;
	}
	.page-content-wrap{
		margin: 50px calc((600px - 100vw + 18px) / 2);
	}
	.page-content-wrap .page-content-inner{
		padding: 0 calc((100vw - 600px - 18px) / 2);
	}
	.page-energy-meta-wrap{
		float: left;
		width: 50%;
	}
	.page-energy-meta-wrap + .page-extra-meta-wrap{
		margin-left: calc(50% + 60px);
		overflow: hidden;
	}
	.post-content .page-meta,
	.page-energy-meta,
	.page-extra-meta,
	.page-near-meta li,
	.post-content .page-number-price{
		margin-left: 30px;
	}
	.page-near-meta{
		margin-right: 0;
	}
	.page-near-meta li{
		width: calc(50% - 30px);
		margin-right: 0;
	}
	.page-near-meta li:nth-child(even){
		padding-left: 60px;
	}
	.translate-right{
		transform: translateX(16%);
	}
	article.post{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: start;
	}
	article.post .post-thumbnail,
	article.post .post-content{
		width: calc(50% - 20px);
	}
}
@media (min-width: 992px){
	.search-form.full{
		margin: 0 calc((800px - 100vw + 18px) / 2);
		padding: 30px calc((100vw - 800px + 18px) / 2);
	}
	body.home:not(.scrolled) .site-navigation #menu-main-en,
	body.home:not(.scrolled) .site-navigation #menu-main{
		margin-right: calc((800px - 100vw + 18px) / 2);
	}
	.page-content-wrap{
		margin: 50px calc((800px - 100vw + 18px) / 2);
	}
	.page-content-wrap .page-content-inner{
		padding: 0 calc((100vw - 800px - 18px) / 2);
	}
	.contact-form .wpcf7-form-control-wrap:not([data-name="message"]),
	.contact-form input[type="submit"]{
		width: 50%;
	}
}
@media (max-width: 1199px){
	.search-form{
		display: block;
		padding-bottom: 50px !important;
	}
	.search-form.full{
		padding: 30px 5% 80px !important;
	}
	.search-form .category{
		margin: 0 !important;
	}
	.search-form .more-fields{
		opacity: 1;
		pointer-events: auto;
		margin: 0;
	}
	.search-form .row .select{
		margin: 0 0 5px;
	}
	.search-form.full .more-fields,
	.search-form.full .popup,
	.search-form .more,
	.search-form.full .submit:after{
		display: none;
	}
	.search-form .submit{
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
	}
	.search-form.full .submit{
		bottom: 30px;
		left: 5%;
		right: 5%;
	}
	.search-form button[type="submit"]{
		width: 100%;
	}
	.search-form .submit:after{
		content: "CERCA";
		position: absolute;
		color: #fff;
		font-weight: 500;
		font-size: 20px;
		left: 18px;
		top: 50%;
		transform: translateY(-50%);
	}
	html[lang="en-US"] .search-form .submit:after{
		content: "SEARCH";
	}
	.search-form.full button[type="submit"]{
		text-align: left;
		font-weight: 500;
		font-size: 20px;
		padding-left: 18px;
	}
	.search-form.full .row select[name="cosa"]{
		border-top-left-radius: 20px;
	}
	.search-form .row{
		display: block;
		padding: 0;
		background: transparent;
	}
}
@media (min-width: 1200px){
	.search-form.full .category{
		width: 387px;
		justify-content: end;
	}
	.search-form.full .row select[name="citta"]{
		width: 150px;
	}
	.search-form.full .row select[name="cosa"]{
		width: 215px;
	}
	.search-form.full{
		margin: 0 calc((1140px - 100vw + 18px) / 2);
		padding: 30px calc((100vw - 1140px + 18px) / 2);
	}
	body.home:not(.scrolled) .site-navigation #menu-main-en,
	body.home:not(.scrolled) .site-navigation #menu-main{
		margin-right: calc((1140px - 100vw + 18px) / 2);
		padding-right: calc((100vw - 1140px + 18px) / 2);
	}
	.page-content-wrap{
		margin: 50px calc((1140px - 100vw + 18px) / 2);
	}
	.page-content-wrap .page-content-inner{
		padding: 0 calc((100vw - 1140px - 18px) / 2);
	}
	.page-near-meta{
		margin-right: 50px;
	}
	.page-near-meta li{
		width: calc(25% - 30px - 50px);
		margin-right: 50px;
	}
	.page-near-meta li:nth-child(even){
		padding-left: 0;
	}
}
