/* Autogenerated by richieste-it for form ID 719 */
:root {
	--fr-font-family: "Lexend",
		-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;


	/* Colori e stili etichette, placeholder e link */
	--fr-label-color: #fff;
	--fr-label-font-size: 1rem;
	--fr-labelcheck-font-size: 0.8rem;
	--fr-field-text-color: #1c2614;
	--fr-field-text-font-size: 1rem;
	--fr-placeholder-color: #1c2614;
	--fr-link-color: #de2746;
	
	/* Colore icone e spunte */
	--fr-icon-color: #e7c00d;
	--fr-accent-color: #e7c00d;
	
	/* Sfondo della form */
	--fr-bg-form: transparent;
	
	/* Colori e stile dei campi */
	--fr-field-bg: #ffffff;
	--fr-border-color: transparent;
	--fr-border-focus: #e7c00d;
	--fr-border-radius: 6px;

	/* Colori e stile pulsante */
	--fr-button-bg: #e7c00d;
	--fr-button-bg-hover: #B79703;
	--fr-button-text-color: #000;
	--fr-button-border-radius: 5px;
	
}

/* ======================================================================
   FONT
   ====================================================================== */

.form-richieste,
.form-richieste .campo,
.form-richieste .campo input,
.form-richieste .campo select,
.form-richieste .campo select option,
.form-richieste .campo textarea,
.form-richieste .campo label,
.form-richieste .campo button {
    font-family: var(--fr-font-family) !important;
}


/* ======================================================================
   CSS SPECIFICI FORM RICHIESTE
   ====================================================================== */

/* Contenitore del form */
.form-richieste {
	max-width: 750px;
	margin: 10px auto;
	padding: 15px;
	background-color: var(--fr-bg-form);
	font-family: var(--fr-font-family);
	box-sizing: border-box;
	border-radius: 8px;
	box-shadow: none;
}

/* Spazi interni della form */
.form-richieste div:not(.campo):not(.riga):not(.campo *):not(.riga *) {
    margin: 5px auto;
}

/* Link dentro la form */
.form-richieste a {
	color: var(--fr-link-color);
	text-decoration: underline;
}

.form-richieste a:hover {
	text-decoration: none;
}

/* Label */
.form-richieste label {
	display: block;
	margin-bottom: 5px;
	font-weight: 600;
	color: var(--fr-label-color);
	font-size: var(--fr-label-font-size);
}

.form-richieste label#label-check {
	font-size: var(--fr-labelcheck-font-size);
}

/* No Label e Campi nascosti */
.form-richieste .fr-no-label label {
	display: none;
}
.form-richieste .campo.hidden-field {
    display: none;
}

/* ======================================================================
   CAMPI / BORDI
   ====================================================================== */

.form-richieste input[type="text"],
.form-richieste input[type="tel"],
.form-richieste input[type="email"],
.form-richieste input[type="number"],
.form-richieste input[type="date"],
.form-richieste select,
.form-richieste textarea {
	width: 100%;
	max-width: 100%;
	padding: 0 12px;
	height: 40px;
	border: 1px solid var(--fr-border-color);
	background-color: var(--fr-field-bg);
	color: var(--fr-field-text-color);
	font-size: var(--fr-field-text-font-size);
	box-sizing: border-box;
	border-radius: var(--fr-border-radius);
	transition:
		border-color 0.2s ease-in-out,
		box-shadow 0.2s ease-in-out,
		background-color 0.2s ease-in-out;
}

/* Textarea */
.form-richieste textarea {
	height: auto;
	min-height: 100px;
	padding: 10px 12px;
	resize: vertical;
	line-height: 1.5;
}

/* Focus stato */
.form-richieste input:focus,
.form-richieste select:focus,
.form-richieste textarea:focus {
	outline: none;
	border-color: var(--fr-border-focus);
	box-shadow: 0 0 0 3px var(--fr-border-focus);
}

/* Placeholder */
.form-richieste ::placeholder {
	color: var(--fr-placeholder-color);
	opacity: 1;
}

/* ======================================================================
   CHECKBOX / RADIO
   ====================================================================== */

.form-richieste input[type="checkbox"],
.form-richieste input[type="radio"] {
	cursor: pointer;
	vertical-align: middle;
	accent-color: var(--fr-accent-color);
}

.form-richieste input[type="checkbox"] {
	transform: scale(1.2);
	margin-right: 10px;
}

.form-richieste input[type="radio"] {
	transform: scale(1.15);
	margin-right: 6px;
}

.form-richieste .form-check {
	display: flex;
    flex-flow: wrap;
    flex-direction: row;
	align-items: center;
}

/* ======================================================================
   RADIO “TIPO CLIENTE” INLINE
   ====================================================================== */

.form-richieste .tipo-soggetto-wrapper {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
}

.form-richieste .ts-option {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: 0 !important;
	/*gap: 12px;*/
}

.form-richieste .tipo-soggetto-wrapper .ts-label-titolo {
	margin: 0 12px 0 0;
}

.form-richieste .tipo-soggetto-wrapper .ts-label-opzione {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	font-weight: 600;
	color: var(--fr-label-color);
}

.form-richieste .tipo-soggetto-wrapper input[type="radio"] {
	transform: scale(1.15);
	margin: 0;
}

/* =========================================================
   RADIO INLINE SOLO SE fr-inline-options è presente
   ========================================================= */

/* wrapper delle opzioni */
.form-richieste .fr-inline-options .radio-group,
.form-richieste .fr-inline-options .wpcf7-radio,
.form-richieste .fr-inline-options .gfield_radio,
.form-richieste .fr-inline-options .checkbox-group,
.form-richieste .fr-inline-options .ff-el-group {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

/* singola opzione */
.form-richieste .fr-inline-options label {
	display: inline-flex;
	align-items: center;
	/*gap: 6px;*/
	margin: 0;
	/*margin-bottom: 5px;
	margin-left: 5px;*/
}

/* radio */
.form-richieste .fr-inline-options input[type="radio"] {
	margin: 0 12px 0 0;
}

/* =========================================================
   CONSENSI: checkbox + label INLINE (tutti i layout)
   ========================================================= */
.form-richieste .checkbox-wrapper {
	display: flex;
	align-items: center;
}

.form-richieste .checkbox-wrapper label {
    white-space: normal;
}

/* ======================================================================
   SELECT
   ====================================================================== */

.form-richieste select {
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23cccccc%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
	background-repeat: no-repeat;
	background-position: right 12px top 50%;
	background-size: 10px auto;
	padding-right: 30px;
}

/* ======================================================================
   PULSANTI
   ====================================================================== */

.form-richieste button[type="submit"],
.form-richieste input[type="submit"] {
	display: inline-block;
	background-color: var(--fr-button-bg);
	color: var(--fr-button-text-color);
	font-size: var(--fr-field-text-font-size);
	font-weight: 600;
	padding: 0 25px;
	height: 45px;
	line-height: 45px;
	border: none;
	border-radius: var(--fr-button-border-radius);
	cursor: pointer;
	transition: background-color 0.2s ease;
	width: 100%;
	text-align: center;
}

.form-richieste button[type="submit"]:hover,
.form-richieste input[type="submit"]:hover {
	background-color: var(--fr-button-bg-hover);
}

@media (min-width: 768px) {

	.form-richieste button[type="submit"],
	.form-richieste input[type="submit"] {
		width: 100%;
		min-width: 150px;
		text-transform: uppercase;
	}
}

/* ======================================================================
   ICONE INPUT
   ====================================================================== */

.form-richieste .input-icon {
	position: relative;
}

.form-richieste .input-icon svg {
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	width: 18px;
	height: 18px;
	fill: var(--fr-icon-color);
	opacity: 0.8;
	pointer-events: none;
}

.form-richieste .input-icon input[type="text"],
.form-richieste .input-icon input[type="tel"],
.form-richieste .input-icon input[type="email"],
.form-richieste .input-icon input[type="number"],
.form-richieste .input-icon input[type="date"],
.form-richieste .input-icon select,
.form-richieste .input-icon textarea {
	padding-left: 40px;
}


/* ======================================================================
   LAYOUT BASE
   ====================================================================== */

.form-richieste .riga {
	display: flex;
	flex-wrap: wrap;
}

.form-richieste .campo {
	padding: 7px 8px 0 8px;
	box-sizing: border-box;
}

.form-richieste .w-100 {
	width: 100%;
}

.form-richieste .w-50 {
	width: 50%;
}

.form-richieste .w-70 {
	width: 70%;
}

.form-richieste .w-30 {
	width: 30%;
}

.form-richieste .w-25 {
	width: 25%;
}

@media (max-width: 600px) {

	.form-richieste .w-100,
	.form-richieste .w-50,
	.form-richieste .w-70,
	.form-richieste .w-30,
	.form-richieste .w-25 {
		width: 100%;
	}
}

.nomargin label {
	margin-bottom: 0;
}

.form-richieste.is-submitting button[type="submit"],
.form-richieste.is-submitting input[type="submit"] {
	opacity: 0.7;
	cursor: wait;
	pointer-events: none;
}

.hp-field {
	position: absolute;
	left: -9999px;
	top: -9999px;
	height: 1px;
	width: 1px;
	overflow: hidden;
}