/*
 Theme Name: YNQ Hello Elementor Child
 Template: hello-elementor
*/
/*body {
	max-width: 1920px;
	margin: 0 auto;
}*/
/* HEADER */
.cnt-header{
	transition: background 0.4s ease-in-out;
}
.cnt-header.header-active {
	background: rgba(50,50,50,.95);
}
.menu-lang .wpml-ls-legacy-list-horizontal {
	border: none;
	padding: 0;
}
.menu-lang .wpml-ls-link,
.menu-lang .wpml-ls-link:hover{
	font-family: "Suissnord", sans-serif;
	letter-spacing: 2px;
	padding: 0;
	line-height: 1em;
}
.menu-lang .wpml-ls-current-language .wpml-ls-link,
.menu-lang .wpml-ls-link:hover{
	color: #4DC2A9 !important;
}
/* Forza il contenitore a stare su una riga sola */
.menu-lang .wpml-ls-legacy-list-horizontal ul {
    display: flex !important;
    align-items: center;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap; /* Impedisce il ritorno a capo del testo */
}

/* Gestione degli elementi lista */
.menu-lang .wpml-ls-item {
    display: flex !important;
    align-items: center;
    padding: 0 !important;
    margin: 0 !important;
}

/* Il separatore */
.menu-lang .wpml-ls-item:not(:last-child):after {
    content: "|";
    margin: 0 5px; /* Regola lo spazio tra IT e | e tra | ed EN */
    color: #ffffff;
    font-family: "Suissnord", sans-serif;
    opacity: 0.5;
    line-height: 1; /* Evita che l'altezza della riga sposti il separatore */
}

/* Rimuovi eventuali padding extra dal link */
.menu-lang .wpml-ls-link {
    display: inline-block !important;
    padding: 0 !important;
    text-decoration: none;
}
/* BTN */
.btn-primary a,
.btn-secondary a {
	width: 100%;
	min-height: 50px;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
/* CARD */
.card-content-hover {
	height: 100%;
	opacity: 0;
    transition: all 0.4s ease-in-out;
    transform: translateY(100%);
    pointer-events: none;
	cursor: pointer;
}
.card-overlay-wrap, 
.card-overlay-wrap *,
.card-btn-overlay-close {
    -webkit-tap-highlight-color: transparent;
    outline: none !important;
}
.card-overlay-wrap:focus,
.card-btn-overlay-close:focus {
    outline: none !important;
    box-shadow: none !important;
}
/* HOME */
.home-icon-card .elementor-icon {
	display: flex;
	justify-content: center;
	align-items: center;
}
/* SERVICE */
.cnt-service-circle {
	aspect-ratio: 1/1;
}
/* FORM */
.form-contact .form-fields-no-wrapper {
	margin-top: 15px;
	flex-direction: column;
}
.form-contact .form-fields-wrapper,
.form-contact .form-fields-no-wrapper,
.form-extra-info .form-fields-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
}
.form-fields-wrapper .wpcf7-form-control-wrap {
    flex: 0 0 calc(50% - 7.5px);
}
.form-fields-no-wrapper .wpcf7-form-control-wrap {
    flex-grow: 1;
}
.form-fields-wrapper input,
.form-fields-no-wrapper textarea,
.form-fields-no-wrapper input{
    width: 100%;
    padding: 12px;
    box-sizing: border-box;
	border-radius: 0;
	background-color: rgba(50,50,50,0.7);
	color: #aaa;
}
.form-contact .services-selection {
	display: flex;
	flex-direction: column;
	color: #aaa;
}
.form-contact .services-selection label {
	margin-bottom: 5px;
}
.form-contact .services-selection .wpcf7-checkbox {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.form-contact .services-selection .wpcf7-list-item{
	display: flex;
	margin: 0;
}
.form-contact .services-selection .wpcf7-list-item label input[type="checkbox"] {
	padding: 0;
}

.form-footer-wrapper {
    display: flex;
    align-items: center; /* Allinea verticalmente al centro */
    justify-content: space-between; /* Spinge i due elementi ai lati opposti */
    margin-top: 20px;
    gap: 20px;
	color: #aaa;
}
.form-contact .services-selection input[type="checkbox"],
.form-footer-wrapper input[type="checkbox"] {
	appearance: none;
    -webkit-appearance: none;
    height: 18px;
    width: 18px;
    border: 1px solid #666666; /* Colore bordo quando non selezionato */
    border-radius: 0;
    background-color: rgba(50,50,50, 0.7);
	color: #aaa;
    position: relative;
    cursor: pointer;
}
.form-contact .services-selection input[type="checkbox"]:checked:after,
.form-footer-wrapper input[type="checkbox"]:checked:after {
	content: '\2713';
    color: #4DC2A9;
    font-size: 12px;
    position: absolute;
	top: 9px;
    left: 9px;
    /*top: 50%;
    left: 50%;*/
    transform: translate(-50%, -50%);
}
.wpcf7-form-control .wpcf7-list-item label {
	display: flex;
	align-items: center;
	gap: 5px;
}

.terms-container {
	flex: 1; 
    max-width: 70%;
}
.btn-submit {
	display: flex;
	flex-flow: row-reverse;
}
.btn-submit input {
	font-family: "Suissnord", sans-serif;
	color: #ffffff;
	letter-spacing: 2px;
	font-size: 16px;
	background-color: #4DC2A9;
	border: 1px solid #4DC2A9;
	padding: 5px 20px;
	border-radius: 0;
}
.btn-submit input:hover {
	border-color: #ffffff;
	background-color: #4DC2A9;
}
/* FOOTER */
.footer-menu-title h4 {
	z-index: 1;
}
.footer-menu-title h4:after {
	position: absolute;
	content: "";
	left: 0;
	bottom: -1px;
	height: 8px;
	width: 100%;
	z-index: -1;
	background-color: rgba(77,194,169,0.8);
}
/* ------------*/
/*desktop*/
@media (min-width: 1025px) {
    .card-overlay-wrap:hover .card-content-hover {
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto;
    }
}
/*tablet*/
@media (max-width: 1024px) {
	.menu-lang .wpml-ls-link {
		font-size: 14px;
	}
	.list-tag .elementor-inline-item {
		margin-bottom: 10px;
	}
	.card-overlay-wrap.is-active .card-content-hover {
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto;
    }
	.footer-menu-title h4:after {
		height: 6px;
	}
	.form-contact .form-fields-wrapper .wpcf7-form-control-wrap {
        flex: 0 0 100%;
    }
	.form-contact .form-footer-wrapper {
        flex-direction: column;
        align-items: flex-start; /* Allinea a sinistra su mobile */
        gap: 15px;
    }
    
    .form-contact .terms-container {
        max-width: 100%;
    }

    .form-contact .btn-submit {
        width: 100%; /* Opzionale: pulsante a tutta larghezza su mobile */
		flex-flow: column
    }
	.form-contact .btn-submit input {
        width: 100%;
    }
	.form-contact .services-selection .wpcf7-checkbox {
		flex-direction: column;
	}
}
/*mobile*/
@media (max-width: 767px) {
	.menu-lang .wpml-ls-link{
		font-size: 12px;
	}
	.form-fields-wrapper .wpcf7-form-control-wrap {
        flex: 0 0 100%;
    }
	.form-footer-wrapper {
        flex-direction: column;
        align-items: flex-start; /* Allinea a sinistra su mobile */
        gap: 15px;
    }
    
    .terms-container {
        max-width: 100%;
    }

    .btn-submit {
        width: 100%; /* Opzionale: pulsante a tutta larghezza su mobile */
		flex-flow: column
    }
	.btn-submit input {
        width: 100%;
    }
	.card-icon-box .elementor-icon-box-wrapper{
		flex-direction: row !important;
	}
}
