/*
 Theme Name: Divi Child
 Theme URI: https://www.elegantthemes.com/gallery/divi/
 Description: Divi Child Theme
 Author: Elegant Themes
 Author URI: https://www.elegantthemes.com
 Template: Divi
 Version: 1.0.0
*/
 
/* =Theme customization starts here
------------------------------------------------------- */

:root{
	--pri:#B31B28 ;
	--sec:#DDDDDD;
	--ombra: 8px 7px 17px 0px rgba(0, 0, 0, 0.2);
}

body{
	overflow-x: hidden;
}

.grecaptcha-badge {  visibility: hidden; }
.protect-captcha, .protect-captcha a{
font-size:12px;
color:#9b9b9b;
}


.sillabato{
  -webkit-hyphens: auto; 
  -ms-hyphens: auto;    
  hyphens: auto;        
}

/* trattino titoli*/

.underscore{
	position: relative;
	margin: 40px 0 20px 40px;
}
.underscore:before {
    content: "";
    height: 4px;
    width: 30px;
    position: absolute;
    top: 55%;
    left: -40px;
    background: #494949;
}


ul{
  list-style-type: '— '!important;
}


/* slider home */

.sliderRealizzazioni figure{
	 
}
.sliderRealizzazioni img{
	aspect-ratio: 3 / 4;
  	min-height:300px;
	
	height: 100%;
    width: 100%;
    object-fit: cover;
	transition: .3s ease-in-out;
}
.sliderRealizzazioni.zoomIn .dtq-carousel-item:hover img{
	transform: scale(1.2);
	
}


/* menu */

.et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a {
    align-items: flex-end;
    padding: 0;
}

/* menu fixed when scroll up */

#main-content {
    margin-top: 96px;
}
@media only screen and (max-width: 980px) {
	#main-content {    margin-top: 50px; }
}
.hide-header {
opacity: 0;
margin-top: -200px !important;
}
.show-header {
opacity: 1;
margin-top: 0px !important;
}
#global-header-section {
-webkit-transition: all 0.5s ease !important;
-moz-transition: all 0.5s ease !important;
-o-transition: all 0.5s ease !important;
-ms-transition: all 0.5s ease !important;
transition: all 0.5s ease !important;
}



.et_pb_menu_0_tb_header.et_pb_menu .et_mobile_menu, .et_pb_menu_0_tb_header.et_pb_menu .et_mobile_menu ul {
    background-color: #FFFFFF !important;
    width: 132%;
	margin-left: -14%;
}


/* visualizza pdf planimetrie immobile */

@media only screen and (min-width: 980px) {
	.rientro{
		margin-left:40px;
	}
}


.downloadTitle{
	font-style: italic;
	font-weight: 100;
	text-align:right;
	margin-top:-30px;
	margin-bottom:10px;
}
.singlePdf{
	display:flex;
	justify-content: space-between;
	font-style: italic;
	border-bottom: 1px solid #494949;
	padding:5px 0;
	margin-bottom:5px;
	transition: all .2s ease;
}
.singlePdf img {
    height: 20px;
    margin-right: 10px;
	transition: all .2s ease;
}
.singlePdf:hover {
    background-color: var(--sec);
}
.singlePdf img:hover {
    transform: scale(1.1);
}


.singleVideo video{
	width:50%;
}
@media only screen and (max-width: 980px) {
	.singleVideo video{
		width:100%;
	}
}

/* chi siamo 6 caratteristiche*/

.flexOrizzontal{
	display: flex;
	justify-content: center;
	align-items: center;
	gap:30px;
}
.flexOrizzontal .et_pb_image{
	min-width: 70px;
}
@media only screen and (max-width: 980px) {
	.flexOrizzontal{
		flex-direction:column;
		gap: 5px;
	}
	.flexOrizzontal .et_pb_image{
	width: 50px;
}
}

.homeEvidenza .post-content a {
	background-color: var(--pri);
    color: #fff;
    text-align: center;
    padding: 8px;
    border-radius: 8px;
}


/* griglia Immobili */

.griglia-documenti{
	display:grid; 
	grid-template-columns: repeat(auto-fill, minmax(330px, 1fr)); 
	gap:20px;
}

@media only screen and (max-width: 850px) {
	.griglia-documenti{
		grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	}	
	.cardCaratt{
     	flex-direction: column; 
		align-items: flex-start;
	}
	.cardCaratt a{
    	align-self: flex-end;
	}
}

.cardImmobile{
	background:#fff; 
	box-shadow: var(--ombra);
}
.cardImmobile a img:first-child{
	width:100%; 
	height:auto; 
	aspect-ratio: 7 / 6; 
	object-fit: cover;
}

.cardCaratt{
	display:flex; 
	justify-content: space-between; 
	flex-wrap: wrap;
	text-wrap: nowrap;
}
.cardCaratt p, .cardEvidenza p, .infoLuogo{
	display: flex;
	margin-top:10px;
	font-family: 'OpenSans_Condensed-Regular', Helvetica, Arial, Lucida, sans-serif;
}
.cardCaratt img, .cardEvidenza img, .luogoIcon{
	height: 28px;
	margin-right: 10px;
	
}
.cardEvidenza img{
	margin-bottom: -5px;	
}
.luogoText{
	margin-top:3px;
}

.cardCaratt a{
	display:inline-block; 
	margin-top:10px; 
	padding:8px 12px; 
	background:var(--pri); 
	color:#fff !important; 
	text-decoration:none; 
	border-radius:8px;
	font-family: 'OpenSans_Condensed-Regular', Helvetica, Arial, Lucida, sans-serif;
}

.contVenduto .cardImmobile{
	background: var(--sec); 
}
.contVenduto .cardCaratt a{
	background:#494949; 
}

/* griglia filtri*/

.select-wrapper {
    position: relative;
    display: inline-block;
    min-width: 200px;
}
.select2-dropdown {
    border: 0; 
    border-radius: 0;
	box-shadow: var(--ombra);
}
.select2-container--default .select2-selection--single {
    border: 0;
    height: 42px !important; 
    border-radius: 0 !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 40px !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 40px !important;
}
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
    background-color: var(--pri) ;
    color: white;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    width: 46px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b{
	border-color: #fff transparent transparent transparent;
	border-width: 7px 7px 0 7px;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b{
	border-color:  transparent transparent #fff transparent;
	border-width: 0 7px 7px 7px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered{
	background-color: var(--pri);
	color: #fff;
	border: 1px solid #fff;
}
.formContainer{
	display: flex;
    justify-content: center;
}


form#filtro-documenti{
	display:flex; gap:15px; 
	flex-wrap:wrap; 
	align-items: center;
    justify-content: center;
	margin-bottom: 30px;
	background: var(--pri);
    padding: 20px;
    margin-top: -70px;
	width: 60%;
}
@media only screen and (max-width: 980px) {
	form#filtro-documenti{
		width: 100%;
	}
}


/* home in evidenza */
.cardEvidenza{
	display:flex;
	box-shadow: var(--ombra);
}
.cardEvidenza a:first-child{
	width:66%
}

.cardCarattEvid{
	width: 34%;
	padding:40px;
	display:flex;
	flex-direction: column;
    justify-content: space-between;
}
.btnEvidenza{
	display:inline-block; 
	width:100%;
	margin-top:10px; 
	padding:8px 12px; 
	background:var(--pri); 
	color:#fff; 
	text-decoration:none; 
	border-radius:8px;
	text-align:center;
	font-family: 'OpenSans_Condensed-Regular', Helvetica, Arial, Lucida, sans-serif;
}

@media only screen and (max-width: 980px) {
	.cardEvidenza{
		flex-direction: column;
	}
	.cardEvidenza a:first-child, .cardCarattEvid{
		width:100%
	}
}


/* form contatti */
.dsm_contact_form_7 input{
	 padding: 5px!important;
}
.dsm_contact_form_7 .wpcf7-form-control.wpcf7-textarea {
    height: 100px;
	margin-top:10px;
	border: 1px solid #494949;
}






/* --- Stile per lo Slider Full-Width --- */

.full-width-slider-container {
    width: 100vw; 
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

/* Stile base dello slider */
.my-image-slider {
    width: 100%;
    height: 65vh; 
    background-color: #f0f0f0; 
	--swiper-navigation-sides-offset: 20px;
}

@media only screen and (max-width: 980px) {
	.my-image-slider {
		height: 40vh; 
	}
}

.my-image-slider .swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #fff;
    
    /* Centra l'immagine nella slide */
    display: flex;
    justify-content: center;
    align-items: center;
	user-select: none;
}
.my-image-slider .swiper-slide a{
    height: 100%;
}
.my-image-slider .swiper-slide img {
    display: block;
    min-width: 100vw; 
    height: 100%;
    object-fit: cover; /* Assicura che l'immagine copra tutta la slide senza distorcersi */
	user-select: none;
	max-width: none;
}

/* Personalizzazione delle frecce di navigazione Swiper (opzionale) */
.swiper-button-next,
.swiper-button-prev {
    color: #fff;
    background-color: var(--pri);
    padding: 25px;
    border-radius: 30px;
}
.swiper-button-next:after, .swiper-button-prev:after {
    font-size: 30px;
}

.swiper-pagination-bullet {
    background: var(--pri); 
}
.swiper-pagination-bullet-active {
	width: 20px;
    border-radius: 10px;
}



/* slider home */

/* --- Stile per Slider Verticale Multi-slide --- */

/* Stile base dello slider con altezza fissa per le immagini verticali */
.sliderMulti {
    width: 100%;
    height: 70vh; /* Altezza fissa per lo slider. Modifica a piacere (es. 600px) */
    max-height: 800px; /* Limite massimo di altezza */
    min-height: 500px; /* Limite minimo di altezza */  
}

.sliderMulti .swiper-slide {
    background: #f0f0f0; /* Colore di sfondo per il caricamento */
    overflow: hidden; /* Nasconde parti dell'immagine che potrebbero fuoriuscire */
	aspect-ratio: 3 / 4;
	user-select: none;
}

.sliderMulti .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover; 
}



.sliderMulti {
    --swiper-navigation-sides-offset: 10px; /* frecce più vicine ai bordi */
}

/* Nasconde le frecce su mobile per un look più pulito, visto che c'è solo 1 slide */
/* @media (max-width: 767px) {
    .sliderMulti .swiper-button-next,
    .sliderMulti .swiper-button-prev {
        display: none;
    }
} */

