.ito-form {
	--ito-f-bg: var(--wp--preset--color--deep-field, #0C3A63);
	--ito-f-field: var(--wp--preset--color--deep, #062A4A);
	--ito-f-ink: var(--wp--preset--color--deep-ink, #EAF2FA);
	--ito-f-muted: var(--wp--preset--color--deep-muted, #A9C3DB);
	--ito-f-hi: var(--wp--preset--color--sky, #6FB1E4);
	--ito-f-accent: var(--wp--preset--color--accent, #004B87);
	background: var(--ito-f-bg); color: var(--ito-f-ink);
	border-radius: 16px; padding: clamp(1.3rem, 3vw, 2rem);
	display: grid; gap: 1.2rem;
}
.ito-form fieldset { border: 0; padding: 0; margin: 0; }
.ito-form legend, .ito-form label { font-weight: 700; font-size: .95rem; display: block; margin-bottom: .5rem; color: var(--ito-f-ink); }
.ito-chips { display: flex; flex-wrap: wrap; gap: .5rem; }
.ito-chips input { position: absolute; opacity: 0; pointer-events: none; }
.ito-chips label { margin: 0; font-weight: 400; padding: .5rem .95rem; border-radius: 999px; border: 1.5px solid rgba(234, 242, 250, .3); cursor: pointer; font-size: .92rem; }
.ito-chips label:hover { border-color: rgba(234, 242, 250, .7); }
.ito-chips input:checked + label { background: #fff; border-color: #fff; color: var(--ito-f-accent); font-weight: 700; }
.ito-chips input:focus-visible + label { outline: 3px solid var(--ito-f-hi); outline-offset: 2px; }
.ito-form-zeile { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.ito-form-zeile > div { min-width: 0; }
@media (max-width: 560px) { .ito-form-zeile { grid-template-columns: 1fr; } }
.ito-form input[type=text], .ito-form textarea {
	width: 100%; box-sizing: border-box; font: inherit; font-size: 1.0625rem; color: var(--ito-f-ink);
	background: var(--ito-f-field); border: 1.5px solid transparent; border-radius: 8px; padding: .75rem .9rem;
}
.ito-form input::placeholder, .ito-form textarea::placeholder { color: rgba(169, 195, 219, .75); }
.ito-form input:focus, .ito-form textarea:focus { outline: none; border-color: var(--ito-f-hi); }
.ito-form [aria-invalid="true"] { border-color: #F2A3A3; }
.ito-form textarea { min-height: 120px; resize: vertical; }
.ito-form-fehler { color: #FFC9C9 !important; font-size: .88rem; margin: .4rem 0 0; }
.ito-form-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.ito-form-senden { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; justify-content: space-between; }
.ito-form-senden small { color: var(--ito-f-muted); font-size: .85rem; max-width: 24em; }
.ito-form-senden small a { color: var(--ito-f-ink); }
.ito-form button {
	font-family: inherit; font-weight: 700; font-size: .95rem; line-height: 1; cursor: pointer;
	background: #fff; color: var(--ito-f-accent); border: 0; border-radius: 8px; padding: .85rem 1.3rem;
}
.ito-form button:hover { background: var(--wp--preset--color--accent-soft, #E3EDF7); }
.ito-form button:focus-visible { outline: 3px solid var(--ito-f-hi); outline-offset: 3px; }
.ito-form-danke { text-align: center; padding-block: 2.5rem; }
.ito-form-danke h3 { color: var(--ito-f-ink); margin: 0; }
.ito-form-danke p { color: var(--ito-f-muted); margin: .6rem 0 0; }
.ito-form-danke a { color: var(--ito-f-ink); }
.ito-form-led { display: block; width: 14px; height: 14px; border-radius: 50%; background: #2E9E5B; margin: 0 auto 1rem; box-shadow: 0 0 0 6px rgba(46, 158, 91, .3); }
