.form-card,.lead-form{--form-error:#ff9494;--form-error-soft:#ff78781f}.form-layout{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start;gap:clamp(1.5rem,4vw,3.5rem);display:grid}.form-card{border:1px solid var(--line-strong);border-radius:calc(var(--radius-card) + 4px);background:radial-gradient(120% 70% at 100% 0%, var(--accent-soft), transparent 60%), var(--surface);padding:clamp(1.4rem,3.4vw,2.5rem)}.form-aside{top:calc(var(--header-h) + 52px + 1.5rem);gap:1.5rem;display:grid;position:sticky}.form-aside h2{font-size:1.25rem}.form-steps{border-top:1px solid var(--line);counter-reset:step;gap:0;margin-top:.9rem;display:grid}.form-steps li{border-bottom:1px solid var(--line);color:var(--text-2);counter-increment:step;padding:.95rem 0 .95rem 2.6rem;position:relative}.form-steps li:before{content:counter(step);border:1px solid var(--accent);width:1.75rem;height:1.75rem;font-family:var(--font-mono);color:var(--accent);border-radius:50%;place-items:center;font-size:.72rem;display:grid;position:absolute;top:.85rem;left:0}.form-direct{gap:.35rem;display:grid}.form-direct ul{gap:.15rem;display:grid}.form-direct a{min-height:44px;color:var(--accent);align-items:center;display:inline-flex}.form-direct a:hover{text-decoration:underline}.lead-form{gap:1.25rem;display:grid}.form-required-note{color:var(--text-3);margin-bottom:1.25rem;font-size:.85rem}.fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.35rem 1rem;display:grid}.field{border:0;grid-column:1/-1;align-content:start;gap:.45rem;min-width:0;margin:0;padding:0;display:grid}.field.is-half{grid-column:auto}.field label,.field legend{font-family:var(--font-display);color:var(--text);padding:0;font-size:.92rem;font-weight:500}.field .req{color:var(--accent)}.field .opt{color:var(--text-3);font-weight:400}.hint{color:var(--text-3);font-size:.85rem}.field input[type=text],.field input[type=email],.field input[type=tel],.field select,.field textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--bg-elev);width:100%;min-height:50px;color:var(--text);font:inherit;transition:border-color .2s var(--ease), box-shadow .2s var(--ease), background-color .2s var(--ease);padding:.8rem 1rem;font-size:1rem;line-height:1.4}.field textarea{resize:vertical;min-height:150px}.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23a9b5bf' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;padding-right:2.6rem}.field select option{background:var(--surface);color:var(--text)}.field input:hover,.field select:hover,.field textarea:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--line-strong))}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft), 0 0 0 1px var(--accent);outline:none}.choice-group legend{margin-bottom:.1rem}.choices{flex-wrap:wrap;gap:.6rem;display:flex}.choice{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--bg-elev);cursor:pointer;min-height:48px;font-family:var(--font-body);color:var(--text-2);transition:border-color .2s var(--ease), background-color .2s var(--ease), color .2s var(--ease);align-items:center;gap:.7rem;padding:.6rem 1rem;font-size:.95rem;font-weight:400;line-height:1.35;display:inline-flex;position:relative}.choice:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--line-strong));color:var(--text)}.choice input{appearance:none;border:1.5px solid var(--text-3);cursor:pointer;width:20px;height:20px;transition:border-color .2s var(--ease), background-color .2s var(--ease);background:0 0;border-radius:50%;flex:none;place-content:center;margin:0;display:grid}.choice input[type=checkbox]{border-radius:5px}.choice input:after{content:"";background:var(--accent-ink);width:10px;height:10px;transition:transform .15s var(--ease);border-radius:50%;transform:scale(0)}.choice input[type=checkbox]:after{clip-path:polygon(14% 52%,0 66%,38% 100%,100% 20%,86% 6%,38% 72%);border-radius:2px;width:11px;height:11px}.choice input:checked{border-color:var(--accent);background:var(--accent)}.choice input:checked:after{transform:scale(1)}.choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.choice:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.choices.is-cards .choice{flex:14rem}.field.consent .choice{align-items:flex-start;width:100%;padding:.85rem 1rem;display:flex}.field.consent .choice input{margin-top:.1rem}.field.consent a{color:var(--accent);text-decoration:underline}.field-error{color:var(--form-error);align-items:flex-start;gap:.45rem;font-size:.88rem;line-height:1.4;display:flex}.field-error:before{content:"!";border:1.5px solid;border-radius:50%;flex:none;place-items:center;width:1.15rem;height:1.15rem;margin-top:.1rem;font-size:.7rem;font-weight:700;display:grid}.field-error[hidden]{display:none}.has-error input[type=text],.has-error input[type=email],.has-error input[type=tel],.has-error select,.has-error textarea,.has-error .choice{border-color:var(--form-error)}.form-actions{margin-top:1.6rem}.form-actions .btn{width:100%}.form-actions .btn[disabled]{cursor:progress;opacity:.85;transform:none}.form-actions .btn[aria-busy]:before{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:1em;height:1em;animation:.7s linear infinite form-spin}.form-actions .btn[aria-busy] svg{display:none}@keyframes form-spin{to{transform:rotate(360deg)}}.form-notice{border-radius:var(--radius-sm);color:var(--text);background:#f5c26b14;border:1px dashed #f5c26b99;gap:.35rem;padding:.9rem 1.1rem;font-size:.92rem;display:grid}.form-devnote{font-family:var(--font-mono);color:#f5c26b;font-size:.75rem}.form-states{gap:1rem;display:grid}.form-states:not(:has(.form-state:not([hidden]))){display:none}.form-state{border:1px solid var(--line-strong);border-radius:var(--radius-card);background:var(--surface-2);outline:none;justify-items:start;gap:.6rem;padding:1.2rem 1.3rem;display:grid}.form-state[hidden]{display:none}.form-state h3{font-size:1.25rem}.form-state p{color:var(--text-2)}.form-state.is-error{border-color:color-mix(in srgb, var(--form-error) 55%, transparent);background:var(--form-error-soft)}.form-state.is-error h3{color:var(--form-error)}.form-state.is-success{border-color:color-mix(in srgb, var(--accent) 60%, transparent);background:var(--accent-soft)}.form-state.is-success h3{color:var(--accent)}.state-icon{background:var(--accent);width:2.4rem;height:2.4rem;color:var(--accent-ink);border-radius:50%;padding:.5rem}.state-contact a{color:var(--accent);text-decoration:underline}.hp{width:1px;height:1px;position:absolute;top:auto;left:-10000px;overflow:hidden}@media (width<=960px){.form-layout{grid-template-columns:minmax(0,1fr)}.form-aside{position:static}}@media (width<=640px){.fields{grid-template-columns:minmax(0,1fr)}.field.is-half{grid-column:1/-1}.choices.is-cards .choice{flex-basis:100%}}.field .choice{font-family:var(--font-body);color:var(--text-2);font-size:.95rem;font-weight:400}.field .choices.is-cards .choice{color:var(--text);font-weight:500}.field .choice:has(input:checked){color:var(--text)}.field.consent .choice{font-size:.92rem;line-height:1.5}
