/*
Theme Name: Houzez Child
Theme URI: http://www.favethemes.com/
Author: Favethemes
Author URI: http://www.favethemes.com/
Description: Houzez is a premium WordPress theme for real estate agents where modern aesthetics are combined with tasteful simplicity, and where the ease of use is achieved without compromise in your ability to customise the design. Whether you are a real estate agent looking to build a website for your company or a web developer seeking a perfect WordPress theme for your next project, you are certain to appreciate the numerous features and benefits that our theme provides.
Version: 1.0
Tags: white, right-sidebar, left-sidebar, custom-colors, custom-menu, featured-images, post-formats, theme-options, translation-ready
License: GNU General Public License version 3.0
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Text Domain: houzez
Template: houzez
*/


@import url("../houzez/style.css");

/* Your CSS code goes here
-------------------------------------- */

:root {
  --rosso: #b14c59;
  --blu: #00335a;
}

.btn-primary {
  border-color: #fff !important;
}

strong {
    font-weight: 700;
}

.ml-20 {
  margin-left: 20px;
}

/* -------------------------------------------------------------------------------- */
/* ! Header
/* -------------------------------------------------------------------------------- */

.logged-in-nav-wrap {
  display: none !important;
}

#main-nav {
  margin-right: .5rem !important;
}

.header-mobile-right .btn.btn-create-listing {
  color: #ffffff;
  border: 1px solid #ffffff;
  background-color: rgba(255, 255, 255, 0.2);
}

.header-mobile-right .btn.btn-create-listing:hover,
.header-mobile-right .btn.btn-create-listing:focus,
.header-mobile-right .btn.btn-create-listing:active {
  color: rgba(255, 255, 255, 1);
  background-color: var(--rosso-65);
}

@media (min-width: 1200px) {
  #main-nav {
    margin-right: 1.5rem !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
	header .main-nav .dropdown-toggle:after {
		margin-left: 5px;
	}
	
	header .logo {
		width: 135px;
		margin-right: 10px;
	}
	
	header .logo img {
		max-width: 100%;
	}
}

/* -------------------------------------------------------------------------------- */
/* ! Header Mobile
/* -------------------------------------------------------------------------------- */

.custom-offcanvas-header {
  padding: 13px 8px 13px 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.custom-offcanvas-header h5 {
  font-size: 1rem;
  margin-bottom: 0;
  line-height: 1.2;
}

#closeOffcanvasBtn {
  padding: 8px;
  font-size: 12px;
  float: right;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .5;
}

.nav-mobile:not(.houzez-nav-menu-main-mobile-wrap) .main-nav .nav-item a {
  border-bottom-color: #dce0e0;
}

.nav-mobile .main-nav .nav-item .nav-mobile-trigger {
  top: -1px;
  right: 15px;
  color: var(--rosso);
}

.nav-mobile .houzez-icon {
  font-weight: 300;
}

.nav-mobile a.dropdown-item {
  line-height: 25px !important;
  padding: 15px 0 15px 30px !important;
  color: var(--rosso) !important;
}

.nav-mobile a.dropdown-item:hover,
.nav-mobile a.dropdown-item:focus {
  color: var(--testo) !important;
}

.nav-mobile .nav-item.menu-item-has-children>.nav-link,
.nav-mobile .nav-item.menu-item-has-children>.nav-mobile-trigger {
  pointer-events: none;
}

@media (min-width: 1200px) and (max-width: 1399px) {
    .main-nav:not(.houzez-nav-menu-main) .nav-link {
        padding-right: 10px !important;
        padding-left: 10px !important;
    }
}

@media (max-width: 991.98px) {
  .slideout-open .slideout-panel {
    transform: none !important;
  }

  .nav-mobile {
    transition: transform 0.3s ease-in-out !important;
    transform: translateX(-100%);
  }

  .slideout-open .nav-mobile {
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    position: fixed;
    z-index: 99;
    transform: translateX(0%);
  }

  .slideout-menu {
    width: 100%;
    max-width: 400px;
    margin-bottom: 0;
  }
}

/* -------------------------------------------------------------------------------- */
/* ! Footer
/* -------------------------------------------------------------------------------- */

footer #text-3 a {
  display: inline-block;
  width: 36px;
  height: 36px;
  line-height: 33px;
  background-color: #fff;
  margin-right: 10px;
  border-radius: 36px;
  text-align: center;
  transition: .2s;
}

footer #text-3 a:hover,
footer #text-3 a:focus {
  background-color: rgba(255, 255, 255, 0.7);
}

footer .btn-primary-outlined {
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 5px;
  color: #fff;
  border-color: #fff;
  padding: 6px 24px;
}

footer .btn-primary-outlined:hover,
footer .btn-primary-outlined:focus,
footer .btn-primary-outlined:active {
  color: var(--rosso) !important;
  background-color: #fff;
}

footer #text-4 li {
  padding: 5px 0;
  text-align: right;
}

footer #text-4 a.text-white:hover,
footer #text-4 a.text-white:focus {
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-thickness: 1px;
}

.footer-bottom-wrap-v4 {
  padding: 0;
}

.footer-top-wrap {
  padding: 70px 0 55px;
}

footer li {
    padding: 5px 0;
}

@media (min-width: 992px) and (max-width: 1199px) {
  footer .col-md-3:nth-child(3) {
    -ms-flex: 0 0 28%;
    flex: 0 0 28%;
    max-width: 28%;
  }

  footer .col-md-3:nth-child(4) {
    -ms-flex: 0 0 22%;
    flex: 0 0 22%;
    max-width: 22%;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  footer .btn {
    white-space: normal;
    line-height: 2;
  }
}

@media (max-width : 767px) {

  .widget-title,
  footer li,
  footer #text-3 {
    text-align: center;
  }

  .footer-social {
    margin-bottom: 30px;
  }

  footer #text-4 ul {
    display: flex;
    column-gap: 40px;
    justify-content: center;
  }

}

/* -------------------------------------------------------------------------------- */
/* ! Form 
/* -------------------------------------------------------------------------------- */

.form-row {
  width: 100%;
  margin-left: calc(-20px / 2);
  margin-right: calc(-20px / 2);
  margin-bottom: -20px;
  display: flex;
  flex-wrap: wrap;
  padding-top: 20px;
}

.form-row p {
  margin-bottom: 0;
}

.column-half {
  width: 50%;
  padding-right: calc(20px / 2);
  padding-left: calc(20px / 2);
  margin-bottom: 20px;
}

.column-full {
  width: 100%;
  padding-right: calc(20px / 2);
  padding-left: calc(20px / 2);
  margin-bottom: 20px;
}

.form-row label {
  font-weight: 500;
  padding-bottom: 8px;
}

.form-row label span {
  color: red;
}

.wpcf7-form .wpcf7-text,
.wpcf7-form textarea {
  border-color: #9e9e9e;
}

.wpcf7-form .wpcf7-text:focus,
.wpcf7-form textarea:focus {
  border-width: 2px;
}

.wpcf7-form .wpcf7-text.wpcf7-not-valid,
.wpcf7-form textarea.wpcf7-not-valid {
  border-color: red;
  border-width: 2px;
}

.wpcf7-list-item {
  margin: 0px;
}

.wpcf7-list-item label {
  font-weight: 400;
  font-size: 13px;
}

.wpcf7-list-item label span {
  color: #222;
}

.form-row .btn-secondary {
  min-width: 200px;
  text-transform: uppercase;
  font-size: 13px;
  line-height: 40px;
  letter-spacing: 4px;
}

.form-row .btn-secondary:hover,
.form-row .btn-secondary:focus,
.form-row .btn-secondary:active {
  color: var(--rosso) !important;
  background-color: #fff !important;
  border-color: var(--rosso) !important;
  ;
}

@media (min-width: 768px) {

  .column-half,
  .column-full {
    padding-left: 0.65rem;
    padding-right: 0.65rem;
  }
}

@media (max-width : 767px) {
  .column-half {
    width: 100%;
  }
}

/* -------------------------------------------------------------------------------- */
/* ! Pagina elenco agenti e single post
/* -------------------------------------------------------------------------------- */

#header-persone,
#header-posts {
  background-image: url(https://www.benimmobili.eu/wp-content/uploads/2025/12/benimmobili-291.webp);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  margin-top: 0%;
  margin-bottom: 0%;
  padding: 4% 0% 0% 0%;
  position: relative;
  margin-bottom: 70px;
}

#header-posts {
  background-image: url(https://www.benimmobili.eu/wp-content/uploads/2025/11/Benimmobili-381.jpg);
}

#header-persone .overlay,
#header-posts .overlay {
  background-color: #000;
  opacity: 0.5;
  transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
  inset: 0;
  position: absolute;
}

#header-persone .container,
#header-posts .container {
  min-height: 330px;
  display: flex;
  align-items: center;
  padding: 0;
  max-width: 1140px;
}

#header-persone .container .colonna,
#header-posts .container .colonna {
  width: 100%;
  display: flex;
  min-height: 1px;
  position: relative;
}

#header-persone .container .colonna h1,
#header-persone .container .colonna .h1,
#header-posts .container .colonna .h1 {
  padding: 10px;
  font-size: 50px;
  font-weight: 300;
  color: #FFFFFF;
  display: block;
  margin-top: 8px;
  width: 100%;
  font-family: Playfair Display;
}

@media (max-width: 767px) {
  #header-persone .container .colonna h1,
  #header-persone .container .colonna .h1,
  #header-posts .container .colonna .h1 {
    font-size: 27px;
    margin-top: 58px;
  }

  #header-persone,
  #header-posts {
    padding: 0% 8% 0% 8%;
    margin-bottom: 20px;
  }
}

@media (max-width: 1024px) {
  #header-persone .container .colonna h1,
  #header-persone .container .colonna .h1,
  #header-posts .container .colonna .h1 {
    text-align: center;
  }
}

@media (min-width: 1025px) {
  #header-persone,
  #header-posts {
    background-attachment: scroll;
  }
}

/* -------------------------------------------------------------------------------- */
/* ! Pagina dettaglio agente e single post
/* -------------------------------------------------------------------------------- */

.single-houzez_agent .header-main-wrap,
.single-post .header-main-wrap {
  position: absolute;
  width: 100%;
}

.single-houzez_agent .header-v4:not(.sticky-nav-area),
.single-post .header-v4:not(.sticky-nav-area) {
    background-color: transparent;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

.single-houzez_agent .header-v4:not(.sticky-nav-area) a,
.single-post .header-v4:not(.sticky-nav-area) a {
    color: #ffffff;
}

.single-houzez_agent .header-v4:not(.sticky-nav-area) a:hover, 
.single-houzez_agent .header-v4.single-houzez_agent .header-v4:not(.sticky-nav-area) a:active,
.single-post .header-v4:not(.sticky-nav-area) a:hover, 
.single-post .header-v4.single-houzez_agent .header-v4:not(.sticky-nav-area) a:active {
    color: #ffffff;
    background-color: rgba(255, 255, 255, 0.1);
}

.single-houzez_agent .header-v4:not(.sticky-nav-area) .btn-create-listing,
.single-post .header-v4:not(.sticky-nav-area) .btn-create-listing {
    color: #ffffff;
    border: 1px solid #ffffff;
    background-color: rgba(255, 255, 255, 0.2);
}

.single-houzez_agent .header-v4:not(.sticky-nav-area) .btn-create-listing:hover, 
.single-houzez_agent .header-v4:not(.sticky-nav-area) .btn-create-listing:active,
.single-post .header-v4:not(.sticky-nav-area) .btn-create-listing:hover, 
.single-post .header-v4:not(.sticky-nav-area) .btn-create-listing:active {
    color: rgba(255, 255, 255, 1);
    border: 1px solid #b14c59;
    background-color: rgba(177, 76, 89, 0.75);
}

/* -------------------------------------------------------------------------------- */
/* ! Lavora con noi
/* -------------------------------------------------------------------------------- */

.timeline-box strong {
	display: block;
	color: #000;
	text-transform: none;
}

#responsive-form.lavora .form-row {
    padding-top: 0px;
    padding-bottom: 20px;
}

#testimonianze .testimonial-item {
	height: calc(100% - 30px);
}

#testimonianze .testimonial-name {
	font-weight: 700;
	margin-top: 15px;
}

#testimonianze .icon-close-quote:before {
    content: "''";
    font-style: italic;
}

#testimonianze .testimonial-body {
	margin-bottom: 15px;
}

#testimonianze .testimonial-info {
	width: 100%;
}

#testimonianze .testimonial-info::before {
	content: "''";
	display: block;
    font-size: 30px;
	transform: rotate(180deg);
	font-family: houzez-iconfont !important;
	font-style: italic;
	position: relative;
    right: 0;
	bottom: 0;
}

@media (min-width : 768px) {
	.timeline-box .elementor-icon {
		position: absolute;
		left: -26px;
	}
}

/* -------------------------------------------------------------------------------- */
/* ! Form pagine interne 
/* -------------------------------------------------------------------------------- */

#form-colorato label,
#form-colorato label span,
#form-colorato a {
	color: #fff !important;
}

#form-colorato .btn-secondary {
    color: #b14c59 !important;
    background-color: #fff !important;
    border-color: #fff !important;
}

#form-colorato .btn-secondary:hover,
#form-colorato .btn-secondary:focus {
    color: #fff !important;
    background-color: #b14c59 !important;
    border-color: #fff !important;
}


/* -------------------------------------------------------------------------------- */
/* ! Contatti
/* -------------------------------------------------------------------------------- */

#box-contatti .form-row {
    padding-top: 10px;
}

#box-contatti textarea {
	max-height: 80px;
}

#box-contatti .column-full {
    margin-bottom: 10px;
}


/* -------------------------------------------------------------------------------- */
/* ! Carosello recensioni lavora con noi
/* -------------------------------------------------------------------------------- */

#carosello-recensioni i {
	display: block;
	font-style: normal;
}

#carosello-recensioni strong {
	display:block;
}

#carosello-recensioni i:before,
#carosello-recensioni i:after {
    content: "''";
	display: block;
    font-style: italic;
	font-family: houzez-iconfont !important;
    font-weight: 400;
    line-height: 1;
	font-size: 30px;
	margin-bottom: 15px;
}

#carosello-recensioni i:after {
	transform: rotate(180deg);
	margin-top: 15px;
}

#carosello-recensioni .custom-carousel-module {
	display: flex;
	flex-direction: column-reverse;
}

#carosello-recensioni .custom-carousel-module-header {
	margin-top: 30px;
}

/* -------------------------------------------------------------------------------- */
/* ! Embed Video
/* -------------------------------------------------------------------------------- */

.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; } .embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.riquadro-video-cookie {
    border: 1px solid #000;
    text-align: center;
    padding: 10px;
    font-size: 17px;
    line-height: 30px;
}