.form{gap:1.25rem;display:grid}.form fieldset{border:0;gap:1.1rem;min-width:0;margin:0;padding:0;display:grid}.form legend{font-family:var(--font-display);text-transform:uppercase;margin-bottom:.5rem;font-size:1.6rem;font-weight:700;line-height:1}.field{gap:.4rem;display:grid}.field>label,.field__label{font-size:.92rem;font-weight:600}.field .hint{color:var(--muted);font-size:.85rem}.field input[type=text],.field input[type=email],.field input[type=tel],.field input[type=date],.field select,.field textarea{border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);width:100%;min-height:3.1rem;color:var(--ink);-webkit-appearance:none;appearance:none;padding:.75rem .95rem;transition:border-color .2s,box-shadow .2s}.field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%230f1419' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6.5 4 4 4-4'/%3E%3C/svg%3E");background-position:right .9rem center;background-repeat:no-repeat;padding-right:2.5rem}.field textarea{resize:vertical;min-height:8rem}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{border-color:var(--sky-700);outline:none;box-shadow:0 0 0 4px #7cb0d859}.field.is-invalid input,.field.is-invalid select,.field.is-invalid textarea{border-color:#c0392b}.field .error{color:#b03a2e;font-size:.85rem;font-weight:500;display:none}.field.is-invalid .error{display:block}.form__grid{gap:1.1rem;display:grid}@media (width>=560px){.form__grid--2{grid-template-columns:1fr 1fr}}.cards{gap:.6rem;display:grid}@media (width>=560px){.cards--3{grid-template-columns:repeat(3,1fr)}.cards--2{grid-template-columns:repeat(2,1fr)}}.cards label{border:1px solid var(--line);border-radius:var(--r-md);cursor:pointer;gap:.2rem;padding:.85rem 1rem;transition:border-color .2s,background-color .2s,box-shadow .2s;display:grid;position:relative}.cards label:hover{border-color:var(--sky)}.cards input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.cards input:focus-visible+span{outline:2px solid var(--focus);outline-offset:6px;border-radius:2px}.cards label:has(input:checked){border-color:var(--black);background:var(--sky-100);box-shadow:inset 0 0 0 1px var(--black)}.cards .t{font-weight:600}.cards .s{color:var(--muted);font-size:.85rem}.check{cursor:pointer;align-items:flex-start;gap:.75rem;font-size:.95rem;display:flex}.check input{width:1.2rem;height:1.2rem;accent-color:var(--black);flex:none;margin-top:.15rem}.hp{width:1px;height:1px;position:absolute;top:auto;left:-9999px;overflow:hidden}.alert{border-radius:var(--r-md);align-items:flex-start;gap:.75rem;padding:.9rem 1rem;font-size:.95rem;display:flex}.alert svg{flex:none;margin-top:.1rem}.alert--error{color:#7a1f14;background:#fdecea;border:1px solid #f3c2bb}.alert--ok{background:var(--sky-100);color:#11304a;border:1px solid var(--sky-200)}.steps{grid-template-columns:repeat(3,1fr);gap:.5rem;margin-bottom:.5rem;display:grid}.steps li{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);gap:.5rem;font-size:.8rem;font-weight:600;display:grid}.steps li:before{content:"";background:var(--line);border-radius:2px;height:3px;transition:background-color .3s}.steps li.is-active{color:var(--black)}.steps li.is-active:before,.steps li.is-done:before{background:var(--sky)}.steps li.is-done{color:var(--muted)}.form__actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding-top:.5rem;display:flex}.form__actions .btn{min-width:10rem}.btn[disabled]{opacity:.6;cursor:progress;transform:none}.review{border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper-2);gap:.35rem;padding:1rem 1.1rem;display:grid}.review div{border-bottom:1px solid var(--line-2);grid-template-columns:11rem 1fr;gap:.75rem;padding:.3rem 0;font-size:.95rem;display:grid}.review div:last-child{border-bottom:0}.review dt{color:var(--muted)}.review dd{overflow-wrap:anywhere;font-weight:500}@media (width<=480px){.review div{grid-template-columns:1fr;gap:.1rem}}
