/*
Libero Alter contact form
Version: 0.5.13
Changes: Contact Form 7 desktop table width, field alignment and responsive containment.
*/
.la-contact-form,
.wpcf7-form {
	display:grid;
	grid-template-columns:minmax(0, 1fr);
	gap:18px;
	width:100%;
	max-width:100%;
	padding:30px;
	background:#f6f8fb;
	border:1px solid #dce3ea;
	border-radius:16px;
	box-sizing:border-box;
}
.la-field,
.wpcf7-form label {
	display:grid;
	gap:7px;
	min-width:0;
	color:#263442;
	font-size:13px;
	font-weight:800;
}
.la-field--wide,
.wpcf7-form > table,
.wpcf7-form > p,
.wpcf7-form > div {
	grid-column:1/-1;
	min-width:0;
}
.la-field em { color:#d13b3b;font-size:10px;font-style:normal; }
.la-field small { color:#526171;font-weight:500; }
.la-field input,
.la-field select,
.la-field textarea,
.wpcf7-form input:not([type="checkbox"]):not([type="radio"]),
.wpcf7-form select,
.wpcf7-form textarea,
.wpcf7-form .wpcf7-form-control-wrap {
	display:block;
	width:100%;
	max-width:100%;
	min-width:0;
	padding:13px 14px;
	color:#152333;
	background:#fff;
	border:1px solid #dce3ea;
	border-radius:8px;
	outline:2px solid transparent;
	outline-offset:2px;
	box-sizing:border-box;
}
.wpcf7-form .wpcf7-form-control-wrap { padding:0;border:0;background:transparent; }
.la-field input:focus,
.la-field select:focus,
.la-field textarea:focus,
.wpcf7-form input:focus,
.wpcf7-form select:focus,
.wpcf7-form textarea:focus {
	border-color:#1683f5;
	box-shadow:0 0 0 3px rgba(22,131,245,.13);
}
.la-consent { display:flex;align-items:flex-start;gap:10px;font-size:13px; }
.la-consent input { margin-top:5px; }
.wpcf7-form .contact-required-consent {
	grid-column:1/-1;
	min-width:0;
	padding:18px;
	background:#fff;
	border:2px solid #1f6d95;
	border-radius:10px;
	box-sizing:border-box;
}
.wpcf7-form .contact-required-consent > p { margin:0 0 10px; }
.wpcf7-form .contact-required-consent .required-indicator {
	display:inline-block;
	margin-left:.45em;
	padding:.1em .55em;
	color:#fff;
	background:#a52727;
	border-radius:999px;
	font-size:11px;
	line-height:1.5;
}
.wpcf7-form .form-contact .required-indicator,
.wpcf7-form .form-contact .optional-indicator {
	display:inline-block;
	margin-left:.55em;
	padding:.12em .6em;
	border-radius:999px;
	font-size:10px;
	font-weight:800;
	line-height:1.5;
	vertical-align:.1em;
}
.wpcf7-form .form-contact .required-indicator {
	color:#fff;
	background:#a52727;
}
.wpcf7-form .form-contact .optional-indicator {
	color:#33495c;
	background:#e6edf2;
}
.wpcf7-form .form-contact {
	width:100%;
	max-width:none;
	table-layout:fixed;
	border-collapse:collapse;
}
.wpcf7-form .form-contact th,
.wpcf7-form .form-contact td {
	padding:12px 10px;
	border-bottom:1px solid #dce3ea;
	vertical-align:top;
}
.wpcf7-form .form-contact th {
	width:30%;
	padding-top:18px;
	color:#263442;
	font-size:13px;
	text-align:left;
}
.wpcf7-form .form-contact th p {
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:6px 8px;
	margin:0;
}
.wpcf7-form .form-contact th p .required-indicator,
.wpcf7-form .form-contact th p .optional-indicator {
	margin-left:0;
}
.wpcf7-form .form-contact td,
.wpcf7-form .form-contact td > p {
	width:auto;
	min-width:0;
}
.wpcf7-form .contact-submit {
	margin:0;
	text-align:center;
}
.wpcf7-form .contact-required-consent .wpcf7-acceptance,
.wpcf7-form .contact-required-consent .wpcf7-list-item {
	display:block;
	margin:0;
}
.wpcf7-form .contact-required-consent .wpcf7-list-item label {
	display:flex;
	align-items:flex-start;
	gap:12px;
	min-width:0;
	cursor:pointer;
	font-size:14px;
	font-weight:600;
	line-height:1.7;
	overflow-wrap:anywhere;
}
.wpcf7-form .contact-required-consent input[type="checkbox"] {
	flex:0 0 auto;
	width:22px;
	height:22px;
	margin:2px 0 0;
	accent-color:#0b6bdc;
}
.wpcf7-form .contact-required-consent input[type="checkbox"]:focus-visible {
	outline:3px solid #f2a900;
	outline-offset:3px;
}
.wpcf7-form .contact-required-consent a {
	color:#075aa9;
	font-weight:800;
	text-decoration:underline;
	text-underline-offset:.15em;
}
.wpcf7-form .contact-required-consent .wpcf7-not-valid-tip {
	display:block;
	margin-top:8px;
	font-weight:800;
}
.la-submit,
.wpcf7-form input[type="submit"] {
	min-height:56px;
	padding:0 28px;
	color:#fff;
	background:#0b6bdc;
	border:0;
	border-radius:8px;
	font-weight:800;
	cursor:pointer;
}
.la-submit:hover,
.wpcf7-form input[type="submit"]:hover { background:#1683f5; }
.la-form-note { margin:10px 0 0;color:#526171;font-size:11px; }
.la-honeypot { position:absolute;left:-9999px; }
.wpcf7-form textarea { resize:vertical; }
@media(max-width:620px){
	.la-contact-form,
	.wpcf7-form { grid-template-columns:1fr;padding:22px 16px; }
	.la-field,
	.wpcf7-form label { grid-column:1/-1; }
	.wpcf7-form table,
	.wpcf7-form tbody,
	.wpcf7-form tr,
	.wpcf7-form th,
	.wpcf7-form td {
		display:block;
		width:100%;
		max-width:100%;
		box-sizing:border-box;
	}
	.wpcf7-form table { border:0;overflow:visible; }
	.wpcf7-form th,
	.wpcf7-form td { border:0;padding:6px 0; }
	.wpcf7-form .form-contact th p { gap:6px; }
	.wpcf7-form input[type="submit"] { white-space:normal; }
	.wpcf7-form .contact-required-consent { padding:16px; }
}

/* TD-10 canonical accessible form presentation */
.contact-form-shell label,.form-contact th{font-weight:700}
.contact-form-shell :is(input,textarea,select):focus-visible,.wpcf7 :is(input,textarea,select):focus-visible{outline:3px solid #087d88;outline-offset:2px;box-shadow:0 0 0 2px #fff}
.wpcf7-not-valid-tip,.wpcf7-response-output{font-weight:700}
.wpcf7 .screen-reader-response{position:absolute!important;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%)}
