/*
Theme Name: Habitare Lab
Theme URI: 
Author: Marco Crosta
Author URI: 
Description: Tema per gestire il sito Habitare Lab
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: paperdesign
Tags: 
*/


@media (max-width: 1200px) {
  :root {
    --wp--style--global--content-size: 960px;
  }
}

@media (max-width: 768px) {
  :root {
    --wp--style--global--content-size: 720px;
  }
}

@media (max-width: 576px) {
  :root {
    --wp--style--global--content-size: 540px;
  }
}


/*********************************************************************************************
Style general
*********************************************************************************************/

.radius-16{ border-radius: 16px; }
.rounded-circle img{ border-radius: 50% !important; }
.d-none{ display: none !important;}
.h-100 { height: 100%;}

@media (max-width: 768.98px) {
	.d-m-t-none{
		display: none;
	}
}

.wp-block-separator { border-top: 1px solid; }


/*********************************************************************************************
Header Fixed
*********************************************************************************************/
header{
	position: fixed;
	width: 100%;
	z-index: 1024;
    padding: 14px 0;
}
header::after {
  content: "";
  position: absolute;
  inset: 0; /* top right bottom left = 0 */
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px); /* Safari */
  background: rgba(0, 0, 0, 0.4); /* fondamentale */
  z-index: -1;
}
@media (min-width: 767px) {
	padding: 21px 0;
}
/*********************************************************************************************
Header
*********************************************************************************************/
.header-custom ul li a:hover{
	color: var(--wp--preset--color--custom-primary) !important;
}
.header-custom .current-menu-item {
	color: var(--wp--preset--color--custom-primary) !important;
}
.custom-menu .wp-block-navigation__responsive-container{
	background-color:#ffffff !important;
}
.is-menu-open{ z-index: 9999!important; }

.header-custom  a:where(:not(.wp-element-button)) {
	font-size: 14px;
}

.single-servizi .voce-servizi {
    color: var(--wp--preset--color--custom-primary) !important; /* Usa il colore del tuo tema */
}
.single-progetti .voce-progetti{
    color: var(--wp--preset--color--custom-primary) !important; /* Usa il colore del tuo tema */
}

@media (max-width: 767px) {	
    .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
        display: none !important;
    }
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
        display: block !important;
    }
		.header-custom .order-menu{
		order:1;
	}
	.header-custom .custom-menu{
		width: 100%;
		align-items: center !important;
	}
	.header-custom .custom-menu li a span{
		font-size:24px !important;
		font-weight: bold;
	}	
	.header-custom .wp-block-navigation__responsive-container-open svg,
	.header-custom .wp-block-navigation__responsive-container-close svg {
		height: 36px !important;
		width: 36px !important;
	}
}

.wp-block-navigation__responsive-container.is-menu-open {
	background-color:#000000 !important;
}

@media (max-width: 767px) {
	.menu-mobile-toggle .wp-block-navigation__submenu-container {
		display: none !important;
		margin: 24px 0;		
	}
	.menu-mobile-toggle .wp-block-navigation__submenu-container .wp-block-navigation-item.wp-block-navigation-link{
		padding: 8px 0;
	}
	.menu-mobile-toggle .submenu-open > .wp-block-navigation__submenu-container {
		display: block !important;		
	}
	.menu-mobile-toggle .submenu-open > .wp-block-navigation__submenu-container .wp-block-navigation-item__label{
		font-weight: 400;
		font-size:18px !important;
	}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon{
		display: block !important;
	}
	.wp-block-navigation__submenu-icon.wp-block-navigation-submenu__toggle{
		font-size: 30px;		
	}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item, .wp-block-navigation__responsive-container.is-menu-open{
		align-items: center;
	}
	.header-custom .ar-menu,
	.header-custom .line-menu{
		display: none;
	}
	.header-custom .custom-logo{
		width: 180px;
	}
	.header-custom .tool-header{
		gap: 16px;
	}
	.header-custom .nav-tool{
		gap: 8px;
	}	
	.header-custom .tool-header .wp-block-button__link{
		font-size: 13px;
	}
	.header-custom .nav-header{
		order: 1;
	}
}

@media (min-width: 768px) and (max-width: 1199.98px) {
	header .wp-block-navigation{ gap: 22px; }
	header .wp-block-navigation li a{ font-size: 15px !important; }
	.header-custom .ar-menu{
		display: none;
	}	
}


/*********************************************************************************************
Footer
*********************************************************************************************/
footer a{ text-decoration: none;}
footer .wp-block-social-link-anchor{
	font-size:40px;
}

/*********************************************************************************************
HP - Banner info
*********************************************************************************************/
.hp-banner-info{
	justify-content: center;
}
/*********************************************************************************************
Space
*********************************************************************************************/
@media (min-width: 768px) {
	.space{
		padding: 60px 0 !important;
	}
}
@media (min-width: 1200px) {
	.space{
		padding: 100px 0 !important;
	}	
}

/*********************************************************************************************
Contact form 7
*********************************************************************************************/
input[type=text],
input[type=email],
input[type=tel],
input[type=number],
input[type=password],
textarea,
select {
	position: relative;
	border: 0;
	border-bottom: 1px solid var(--wp--preset--color--custom-bordo);
	padding: 8px 10px;
	width: 100%;
	font-size: 16px;
	display: block;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-color: transparent;
	color: #ffffff;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=number],
textarea:focus,
select:focus {
	font-size: 16px;
	border-radius: 0;
	border: 0;
	border-bottom: 1px solid var(--wp--preset--color--custom-primary);	
	outline: none;
	box-shadow: 0px 14px 15px -9px rgba(209, 185, 149, 0.4);
  	transition: box-shadow 0.3s ease-in-out;
}
textarea {
	width: 100%;
}
select::-ms-expand {
  display: none;
}
select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 16px;
    padding-right: 35px; /* Spazio per la freccia */
	padding-left: 0;
    font-size: 14px;	
}
.wpcf7-form{
	display: flex;
    flex-direction: column;
    gap: 16px;	
}
.wpcf7-form label {
	display: block;
    padding-bottom: 8px;
	font-size:14px;
}
.wpcf7-form .wpcf7-list-item {
  margin: 0;
}
.wpcf7-form input[type=submit] {
  background: var(--wp--preset--color--sfondo-sito);
  padding: 4px 50px;
  line-height: 2.5;
  color: white;
  box-sizing: border-box;
  border: 1px solid var(--wp--preset--color--custom-primary);
  margin-top: 24px;
  cursor: pointer;
  font-size:16px;
	text-transform: uppercase;
}
.wpcf7-form input[type=submit]:hover {
  background: var(--wp--preset--color--custom-primary);
}
.wpcf7-form input[type=submit]:disabled {
  background: var(--wp--preset--color--sfondo-sito);
  color: #888787;
  border: 1px solid var(--wp--preset--color--custom-bordo);
}
span.wpcf7-list-item { display: block; }

@media (min-width: 992px) {
  .form-website {
    width: 50%;
  }
}

*, ::after, ::before {
  box-sizing: border-box;
}

.form-group {
  display: flex;
  flex-wrap: wrap;
  column-gap: 16px;
}
.wpcf7-not-valid-tip{
	font-size:14px;
	margin-top: 4px;
}
.form-group .form-group-col {
  flex: 1 0 100%;
  width: 100%;
  max-width: 100%;
}
@media (min-width: 768px) {
  .form-group .form-group-col {
    flex: 1 0 0%;
  }
}

.wpcf7-form.sent * {
	display:none;
}
.wpcf7-form.sent .wpcf7-response-output {
	display:block;
}

.disabled{
	pointer-events:none;
	border-color: #c2c1c1 !important;
	background: #c2c1c1 !important;
	color: #888787 !important;
}

.wpcf7-response-output{
	padding: 24px !important;
    border-radius: 16px;
    font-size: 18px;	
}

select option {
    background-color: #000000;
    color: #ffffff;
}

/*********************************************************************************************
Immagini Portfolio
*********************************************************************************************/
.img-hover-color img {
  filter: grayscale(100%);
  transition: all 0.4s ease;
}

.img-hover-color img:hover {
  filter: grayscale(0%);
}


/*********************************************************************************************
Servizi
*********************************************************************************************/
.servizi-boder-focus .has-border-color {
    transition: border-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}

.servizi-boder-focus .has-border-color:hover,
.servizi-boder-focus .has-border-color:focus {
    border-color: var(--wp--preset--color--custom-primary) !important;    
    box-shadow: 0 0 12px rgba(209,185,149, 0.5);    
    outline: none;
}
.servizi-boder-focus .wp-block-column {
  display: flex;
  flex-direction: column;
}

.servizi-boder-focus .wp-block-buttons {
  margin-top: auto;
}


/*********************************************************************************************
Progetti
*********************************************************************************************/
.progetto-card:hover .progetti-info {
    opacity: 1;
}
.progetto-card:hover {
	filter: none !important; /* Rimuove tutti i filtri (saturazione 0) e riporta il colore originale */
    -webkit-filter: grayscale(0%) !important;
}
/* Rende la copertina il punto di riferimento per il posizionamento */
.progetto-card {
    position: relative;
}

/* Espande il link del titolo a tutta la dimensione della Copertina */
.progetto-card .wp-block-post-title a::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10; /* Fa sì che il link sia sopra l'immagine di sfondo */
}


/*********************************************************************************************
Pulsanti
*********************************************************************************************/
@media (max-width: 768px) {
	.wp-block-buttons>.wp-block-button{
		width: 100%;
	}
	.wp-block-buttons>.wp-block-button .wp-block-button__link.wp-element-button{
		padding: 16px 14px;
		letter-spacing: 1.2px
	}
}