:root{font-family:Manrope,sans-serif;color:#19160d;background:#f0ede4;font-synthesis:none;--ink:oklch(.2 .018 92);--paper:oklch(.945 .012 92);--acid:oklch(.86 .18 103);--orange:oklch(.68 .2 39);--line:oklch(.72 .018 92);--muted:oklch(.45 .018 92);--sm:.5rem;--md:1rem;--lg:1.5rem;--xl:2rem;--xxl:3rem}*{box-sizing:border-box}body{margin:0;min-width:320px}button,select,input{font:inherit}button{cursor:pointer}.masthead{height:68px;border-bottom:1px solid var(--ink);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,4vw,4rem);font-size:.7rem;letter-spacing:.12em}.wordmark{font-family:Archivo Black,sans-serif;color:inherit;text-decoration:none;font-size:.9rem}.wordmark span{color:var(--orange)}.local-mark{display:flex;align-items:center;gap:.5rem}.local-mark i{width:7px;height:7px;border-radius:50%;background:#399e43}main{max-width:1440px;margin:auto;padding:0 clamp(1rem,4vw,4rem)}.hero{padding:clamp(4rem,10vw,8rem) 0 5rem;border-bottom:1px solid var(--ink);position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.68rem;font-weight:700}.hero h1{font-family:Archivo Black,sans-serif;text-transform:uppercase;font-size:clamp(3.3rem,10vw,9rem);line-height:.82;letter-spacing:-.065em;margin:1.5rem 0 2.5rem;max-width:1150px}.hero h1 em{font-style:normal;color:var(--orange)}.hero-copy{display:grid;grid-template-columns:minmax(280px,600px) minmax(280px,380px);gap:clamp(2rem,9vw,9rem);align-items:end}.hero-copy>p{font-size:clamp(1.05rem,1.8vw,1.35rem);line-height:1.5;margin:0}.privacy{border-top:1px solid var(--ink);padding-top:1rem;display:grid;gap:.35rem}.privacy span{font-size:.65rem;letter-spacing:.14em}.privacy strong{font-size:1rem}.privacy small{color:var(--muted);line-height:1.5}.actions{display:flex;align-items:center;gap:1.5rem;margin-top:3rem;flex-wrap:wrap}.primary,.secondary{border:1px solid var(--ink);padding:1rem 1.25rem;background:var(--acid);font-weight:700;display:inline-flex;gap:2rem;justify-content:space-between}.primary:hover{background:var(--ink);color:var(--paper)}.primary:disabled{opacity:.5}.text-button{border:0;border-bottom:1px solid currentColor;background:transparent;padding:.25rem 0}.hint,.browser-note,.error{font-size:.78rem;color:var(--muted);max-width:70ch}.browser-note,.error{padding:.8rem;background:#ecdcc1;color:var(--ink)}.error{background:#ffc7bc;background:oklch(.88 .08 30)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.progress-panel{padding:2rem 0;border-bottom:1px solid var(--ink);display:grid;gap:1rem}.progress-panel div{display:flex;justify-content:space-between;text-transform:uppercase;font-size:.75rem;letter-spacing:.12em}.progress-panel progress{width:100%;height:8px;accent-color:var(--orange)}.progress-panel .text-button{justify-self:start}.results{padding:5rem 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem}.section-heading h2,.cta h2{font-family:Archivo Black;text-transform:uppercase;font-size:clamp(2rem,5vw,5rem);line-height:.95;letter-spacing:-.045em;margin:.6rem 0}.secondary{background:transparent}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);margin:3rem 0}.metrics button{border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;padding:1rem;min-height:110px;display:flex;flex-direction:column;justify-content:space-between}.metrics button+button{border-left:1px solid var(--line)}.metrics button:hover,.metrics button[data-active=true]{background:var(--acid)}.metrics span{font-size:.72rem}.metrics strong{font-family:Archivo Black;font-size:2rem}.table-tools{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:.78rem}.table-tools label{display:flex;align-items:center;gap:.75rem}.table-tools select{background:transparent;border:1px solid var(--ink);padding:.55rem}.table-wrap{overflow:auto;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}table{border-collapse:collapse;width:100%;min-width:1100px;font-size:.75rem}th,td{text-align:left;padding:.8rem;border-bottom:1px solid var(--line);vertical-align:top}th{text-transform:uppercase;letter-spacing:.1em;font-size:.6rem}td:first-child{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pill{display:inline-block;padding:.28rem .45rem;background:#dcd7c9;white-space:nowrap}.pill.safe_repair{background:var(--acid)}.pill.review_required,.pill.ambiguous_match{background:#feb98b}.pill.parse_error{background:#ffab9c;background:oklch(.82 .11 30)}.pagination{display:flex;justify-content:flex-end;gap:.5rem;padding-top:1rem}.pagination button{background:transparent;border:1px solid var(--ink);padding:.6rem}.pagination button:disabled{opacity:.35}.cta{margin-top:8rem;background:var(--ink);color:var(--paper);padding:clamp(2rem,7vw,6rem);display:grid;gap:1rem}.cta h2{max-width:900px}.cta p{color:#b0aea6}.cta .primary{justify-self:start}.cta form{display:flex;align-items:end;gap:1rem;flex-wrap:wrap}.cta label{display:grid;gap:.4rem;font-size:.75rem}.cta input{padding:1rem;border:1px solid var(--paper);background:transparent;color:var(--paper);min-width:280px}.success{color:var(--acid)!important}footer{border-top:1px solid var(--ink);margin-top:4rem;padding:2rem clamp(1rem,4vw,4rem);display:flex;justify-content:space-between;gap:1rem;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase}footer p{margin:0}@media(max-width:700px){.hero-copy{grid-template-columns:1fr}.section-heading{align-items:start;flex-direction:column}.section-heading .secondary{width:100%}.metrics{grid-template-columns:repeat(2,1fr)}.metrics button+button{border-left:0}.table-tools{align-items:start;gap:1rem;flex-direction:column}footer{flex-direction:column}.hero h1{font-size:clamp(3rem,17vw,5rem)}}@media(prefers-reduced-motion:no-preference){button{transition:background-color .2s ease-out,color .2s ease-out}.hero>*{animation:enter .6s cubic-bezier(.22,1,.36,1) both}.hero>*:nth-child(2){animation-delay:.06s}.hero>*:nth-child(3){animation-delay:.12s}@keyframes enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}}.cta textarea{min-width:min(420px,80vw);padding:1rem;resize:vertical;color:var(--paper);border:1px solid var(--paper);background:transparent}.cta label small{color:#a7a49c}.cta .consent{display:flex;max-width:520px;align-items:center;line-height:1.45}.cta .consent input{width:1.1rem;min-width:auto;height:1.1rem}.cta form>.error{flex-basis:100%;margin:0}
