/* Puresteel forms. Matches puresteelco.com: paper, ink, steel, one blue. */
:root{--paper:#f3f2ef;--paper-2:#eae8e3;--ink:#151514;--muted:#5a5853;--rule:#cfccc5;--blue:#007aff;--blue-ink:#0059c7;--err:#b3261e;
--sans:"Archivo","Helvetica Neue",Arial,sans-serif;--mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,monospace}
*{margin:0;padding:0;box-sizing:border-box}
html{background:var(--paper);color:var(--ink);-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}
body{font-family:var(--sans);font-size:1rem;line-height:1.55;min-height:100vh;display:flex;flex-direction:column}
::selection{background:#cfe2ff;color:var(--ink)}
:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
a{color:inherit}
.top{border-bottom:1px solid var(--rule)}
.bar{max-width:1440px;margin:0 auto;padding:0 20px;height:3.5rem;display:flex;align-items:center;justify-content:space-between}
.logo{color:var(--ink);text-decoration:none;font-weight:600;font-size:1.125rem;letter-spacing:-0.05em;line-height:1}
.mono,.back{font-family:var(--mono);font-size:.75rem;letter-spacing:.02em;color:var(--muted)}
.back{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.25em}
.back:hover{color:var(--blue-ink)}
main{flex:1;width:100%;max-width:640px;margin:0 auto;padding:56px 20px 80px}
.eyebrow{font-family:var(--mono);font-size:.75rem;letter-spacing:.02em;color:var(--blue-ink);margin-bottom:16px}
h1{font-weight:400;font-size:clamp(2rem,5vw,2.75rem);line-height:1.05;letter-spacing:-0.035em;margin-bottom:16px}
.lede{font-size:1.125rem;line-height:1.45;letter-spacing:-0.012em;color:var(--muted);padding-bottom:32px;border-bottom:1px solid var(--ink)}
form{margin-top:8px}
.row{margin-top:28px}
.two{display:grid;gap:0 24px}
@media(min-width:640px){.two{grid-template-columns:1fr 1fr}.bar{padding:0 40px}}
label.l,legend.l{display:block;font-family:var(--mono);font-size:.75rem;letter-spacing:.02em;color:var(--ink)}
.opt{color:var(--muted)}
.field{display:block;width:100%;height:3rem;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:transparent;padding:0;font:inherit;font-size:1.0625rem;color:var(--ink);appearance:none;-webkit-appearance:none}
select.field{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath fill='%23151514' d='M6 8.825L1.175 4 2.238 2.938 6 6.7 9.763 2.937 10.825 4z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 2px center;cursor:pointer}
select.field:invalid{color:var(--muted)}
textarea.field{height:auto;min-height:8rem;margin-top:10px;padding:.75rem;border:1px solid var(--ink);resize:vertical;line-height:1.5}
.field::placeholder{color:#8b8a86}
.field:focus{outline:none;border-bottom:2px solid var(--blue)}
textarea.field:focus{border:1px solid var(--blue);box-shadow:inset 0 -1px 0 var(--blue)}
.field.err{border-bottom-color:var(--err)}
textarea.field.err{border-color:var(--err)}
.file{display:block;width:100%;margin-top:10px;padding:12px;border:1px dashed var(--ink);background:transparent;font:inherit;font-size:.9375rem;cursor:pointer}
.file::file-selector-button{font:inherit;font-size:.8125rem;margin-right:12px;padding:6px 10px;border:1px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer}
.file.err{border-color:var(--err)}
.hint{font-family:var(--mono);font-size:.75rem;color:var(--muted);margin-top:8px}
.hint.bad{color:var(--err)}
.hidden{display:none}
.actions{margin-top:40px;padding-top:24px;border-top:1px solid var(--rule)}
button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;min-height:3rem;padding:0 1rem;width:100%;font-family:var(--sans);font-size:.9375rem;font-weight:500;letter-spacing:-0.01em;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--paper);cursor:pointer;transition:background-color .15s ease}
button:hover{background:var(--blue-ink);border-color:var(--blue-ink)}
button:disabled{opacity:.5;cursor:default}
@media(min-width:640px){button{width:auto;min-width:16rem}}
.formerr{margin-top:16px;color:var(--err);font-size:.9375rem}
.done{padding-top:32px}
.done h2{font-weight:400;font-size:1.75rem;letter-spacing:-0.03em;margin-bottom:12px}
.done p{color:var(--muted)}
.done a{color:var(--ink)}
footer{border-top:1px solid var(--rule)}
footer .bar{height:auto;padding-top:20px;padding-bottom:20px;gap:16px;flex-wrap:wrap}
