:root{--paper:#E9EBE8;--paper-deep:#DDE0DC;--ink:#0F2A24;--ink-soft:#4A5F58;--rule:#B4BDB6;--amber:#C98A12;--step-0:1rem;--step-1:1.1875rem;--step-2:1.5rem;--step-3:2rem;--step-4:clamp(2.6rem, 6.2vw, 5.2rem)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Source Serif 4",Georgia,serif;font-size:var(--step-1);line-height:1.62;-webkit-font-smoothing:antialiased}h1,h2,h3,.wordmark,.btn,.nav a,.phase-num,.svc-name,.meter,.tool-meta,.verdict-tag{font-family:Archivo,Helvetica Neue,Arial,sans-serif}a{color:inherit}:focus-visible{outline:2.5px solid var(--amber);outline-offset:3px;border-radius:2px}.wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 clamp(1.25rem,4vw,3.5rem)}.band{padding-block:clamp(3.5rem,8vw,7rem)}.band--tight{padding-block:clamp(2.75rem,5vw,4.25rem)}.band--deep{background:var(--paper-deep)}.masthead{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:1.5rem;border-bottom:1px solid var(--rule)}.wordmark{font-size:1.0625rem;font-weight:700;letter-spacing:.01em;text-decoration:none;display:inline-flex;align-items:baseline;gap:.4rem}.wordmark span{font-weight:400;color:var(--ink-soft)}.nav{display:flex;gap:2rem;align-items:center;font-size:.9375rem;font-weight:500}.nav a{text-decoration:none;padding-block:.25rem;border-bottom:1px solid transparent}.nav a:hover{border-bottom-color:var(--ink)}@media (max-width:820px){.nav{gap:1rem}.nav a{display:none}}.hero{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:clamp(2rem,5vw,4.5rem);align-items:center}@media (max-width:900px){.hero{grid-template-columns:1fr}.iris-holder{order:-1}}h1{font-size:var(--step-4);font-weight:600;line-height:.99;letter-spacing:-.028em;margin:0 0 1.5rem;max-width:15ch;text-wrap:balance}.hero-sub{font-size:var(--step-2);line-height:1.45;color:var(--ink-soft);max-width:46ch;margin:0 0 2.25rem;font-weight:300}.hero-actions{display:flex;flex-wrap:wrap;gap:.875rem 1.25rem;align-items:center}.btn{display:inline-block;font-size:.9375rem;font-weight:600;letter-spacing:.005em;text-decoration:none;padding:.9rem 1.6rem;border:1.5px solid var(--ink);background:var(--ink);color:var(--paper);cursor:pointer;transition:background .18s ease,color .18s ease}.btn:hover,.btn--ghost{background:transparent;color:var(--ink)}.btn--ghost:hover{background:var(--ink);color:var(--paper)}.btn[disabled]{opacity:.45;cursor:not-allowed}.btn[disabled]:hover{background:var(--ink);color:var(--paper)}.iris-holder{display:flex;flex-direction:column;align-items:center;gap:1rem}.iris{width:min(230px,60vw);height:auto;display:block}.iris .blade{fill:none;stroke:var(--ink);stroke-width:1.25}.iris .ring-out{fill:none;stroke:var(--rule);stroke-width:1.25}.iris .pupil{fill:none;stroke:var(--amber);stroke-width:2.5}.iris-cap{font-size:.8125rem;color:var(--ink-soft);font-style:italic;text-align:center}@media (prefers-reduced-motion: no-preference){.iris{animation:focus-in 1.5s cubic-bezier(.16,.84,.34,1) both}.iris .pupil{animation:pupil-close 1.5s cubic-bezier(.16,.84,.34,1) both}}@keyframes focus-in{0%{opacity:0;transform:scale(1.12) rotate(-9deg);filter:blur(7px)}to{opacity:1;transform:scale(1) rotate(0);filter:blur(0)}}@keyframes pupil-close{0%{r:58;opacity:0}to{r:26;opacity:1}}.stance-lead{font-size:var(--step-3);font-weight:400;line-height:1.28;letter-spacing:-.015em;max-width:22ch;margin:0 0 2.5rem;font-family:Archivo,sans-serif}.stance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:clamp(1.75rem,4vw,3rem)}.stance-grid p{margin:0;max-width:38ch;color:var(--ink-soft)}.stance-grid p strong{color:var(--ink);font-weight:600}h2{font-size:var(--step-2);font-weight:600;letter-spacing:-.012em;margin:0 0 2.5rem;padding-bottom:.75rem;border-bottom:1.5px solid var(--ink)}.svc{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,11fr);gap:1rem clamp(1.5rem,4vw,4rem);padding-block:1.75rem;border-bottom:1px solid var(--rule)}.svc:last-child{border-bottom:0}@media (max-width:720px){.svc{grid-template-columns:1fr;gap:.4rem}}.svc-name{font-size:1.25rem;font-weight:600;letter-spacing:-.01em;line-height:1.25;margin:0}.svc-body{margin:0;color:var(--ink-soft);max-width:56ch}.tool-intro{max-width:52ch;color:var(--ink-soft);margin:0 0 2.5rem}.tool-intro strong{color:var(--ink);font-weight:600}.tool{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,4vw,3.5rem);align-items:start}@media (max-width:840px){.tool{grid-template-columns:1fr}}.tool label{display:block;font-family:Archivo,sans-serif;font-size:.875rem;font-weight:600;margin-bottom:.6rem}#workflow{width:100%;min-height:170px;resize:vertical;padding:1rem 1.1rem;border:1.5px solid var(--ink);background:var(--paper);font-family:"Source Serif 4",Georgia,serif;font-size:1.0625rem;line-height:1.55;color:var(--ink)}#workflow::placeholder{color:var(--ink-soft);opacity:.75}.tool-controls{display:flex;flex-wrap:wrap;gap:.875rem 1.25rem;align-items:center;margin-top:1.1rem}.tool-meta{font-size:.8125rem;color:var(--ink-soft);line-height:1.5}.meter{margin-top:1.25rem;font-size:.8125rem;color:var(--ink-soft)}.meter-track{height:3px;background:var(--rule);margin-top:.5rem;overflow:hidden}.meter-fill{height:100%;width:0;background:var(--amber);transition:width .25s ease}.results{border-top:1.5px solid var(--ink);padding-top:1.5rem;min-height:120px}.results-empty{color:var(--ink-soft);font-style:italic;margin:0}.match{padding-block:1.15rem;border-bottom:1px solid var(--rule)}.match:last-child{border-bottom:0}.match-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.35rem}.match h3{font-size:1.0625rem;font-weight:600;margin:0;letter-spacing:-.008em}.match-score{font-family:Archivo,sans-serif;font-size:.8125rem;color:var(--ink-soft);white-space:nowrap}.match p{margin:0;font-size:1rem;color:var(--ink-soft);max-width:48ch}.verdict-tag{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.02em;padding:.15rem .5rem;margin-top:.55rem;border:1px solid currentColor}.v-strong{color:#1e6b4f}.v-mixed{color:var(--amber)}.v-weak{color:#8a4b3a}.tool-note{margin:2rem 0 0;font-size:.875rem;color:var(--ink-soft);max-width:60ch;padding-left:1rem;border-left:2px solid var(--rule)}.phases{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:clamp(2rem,4vw,3.5rem)}.phase-num{display:block;font-size:.875rem;font-weight:700;color:var(--amber);margin-bottom:.85rem;letter-spacing:.04em}.phase h3{font-size:1.375rem;font-weight:600;letter-spacing:-.012em;margin:0 0 .1rem}.phase-when{display:block;font-size:.9375rem;color:var(--ink-soft);font-style:italic;margin-bottom:.85rem}.phase p{margin:0;color:var(--ink-soft);max-width:38ch}.fit{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(2rem,5vw,4.5rem)}.fit h3{font-size:1.125rem;font-weight:600;margin:0 0 1.25rem;letter-spacing:-.008em}.fit ul{list-style:none;margin:0;padding:0}.fit li{padding:.7rem 0 .7rem 1.75rem;border-top:1px solid var(--rule);position:relative;max-width:44ch}.fit li:before{position:absolute;left:0;top:.68rem;font-family:Archivo,sans-serif;font-size:1rem;line-height:1.6}.fit--yes li:before{content:"+";color:var(--amber);font-weight:700}.fit--no li:before{content:"–";color:var(--ink-soft);font-weight:600}.fit--no li{color:var(--ink-soft)}.contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(2rem,5vw,4rem);align-items:start}.contact h2{border-bottom:0;padding-bottom:0;font-size:var(--step-3);line-height:1.15;max-width:16ch;margin-bottom:1.25rem}.contact p{margin:0 0 2rem;color:var(--ink-soft);max-width:40ch}.detail{margin:0 0 1.5rem}.detail dt{font-family:Archivo,sans-serif;font-size:.8125rem;font-weight:600;color:var(--ink-soft);margin-bottom:.2rem}.detail dd{margin:0;font-size:var(--step-1)}.detail dd a{text-decoration:none;border-bottom:1.5px solid var(--amber);padding-bottom:1px}.detail dd a:hover{border-bottom-color:var(--ink)}.foot{border-top:1px solid var(--rule);padding-block:2rem;display:flex;flex-wrap:wrap;gap:.75rem 2rem;justify-content:space-between;font-size:.875rem;color:var(--ink-soft)}.foot p{margin:0}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
