@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600&family=Source+Serif+4:opsz,wght@8..60,400;8..60,600&family=IBM+Plex+Mono:wght@400;500&display=swap');
:root{--paper:#F7F5EF;--paper-deep:#EFEBE1;--ink:#1A1C18;--ink-soft:#52564E;--rule:#D8D3C4;--green:#1F513F;--green-soft:#E4EBE4;--grade-a:#1F513F;--grade-b:#4A7A4E;--grade-c:#B07D2B;--grade-d:#B3541E;--grade-f:#8C2B2B;--font-display:"Fraunces",Georgia,"Times New Roman",serif;--font-body:"Source Serif 4",Georgia,serif;--font-mono:"IBM Plex Mono","Courier New",monospace;--text-xs:.8rem;--text-sm:.9rem;--text-base:clamp(1rem,.95rem + .25vw,1.125rem);--text-lg:clamp(1.15rem,1.05rem + .5vw,1.4rem);--text-h3:clamp(1.3rem,1.1rem + 1vw,1.75rem);--text-h2:clamp(1.6rem,1.2rem + 2vw,2.5rem);--text-h1:clamp(2.1rem,1.4rem + 3.5vw,4rem);--text-hero:clamp(2.4rem,1.2rem + 5vw,5.2rem);--s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.5rem;--s6:2rem;--s7:3rem;--s8:4.5rem;--s9:7rem;--measure:65ch;--page-max:72rem;--page-pad:clamp(1rem,4vw,2.5rem)}
*,*::before,*::after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;min-height:100svh}img,svg{display:block;max-width:100%}input,button,select,textarea{font:inherit}h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.08;letter-spacing:-.015em;overflow-wrap:break-word}h1{font-size:var(--text-h1);text-wrap:balance}h2{font-size:var(--text-h2);text-wrap:balance}h3{font-size:var(--text-h3)}p{max-width:var(--measure)}a{color:var(--green);text-underline-offset:.15em}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--green);outline-offset:2px}.container{max-width:var(--page-max);margin-inline:auto;padding-inline:var(--page-pad)}.site-header{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding-block:var(--s5)}.brand{display:flex;align-items:center;gap:var(--s3);font-family:var(--font-display);font-size:1.15rem;font-weight:600;color:var(--ink);text-decoration:none}.brand-mark{inline-size:2rem;block-size:2rem;display:grid;place-items:center;border:1.5px solid var(--ink);font-family:var(--font-display);color:var(--green)}.site-nav a{color:var(--ink-soft);font-size:var(--text-sm)}.site-footer{margin-top:var(--s9);padding-block:var(--s6);border-top:1px solid var(--rule);color:var(--ink-soft);font-size:var(--text-sm);display:flex;flex-wrap:wrap;gap:var(--s4) var(--s6)}.eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--green)}
.hero{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--s7);align-items:start;padding-block:var(--s8) var(--s7)}@media(max-width:56rem){.hero{grid-template-columns:minmax(0,1fr)}}.hero h1{font-size:var(--text-hero);margin-block:var(--s4) var(--s5)}.hero .lede{font-size:var(--text-lg);color:var(--ink-soft)}.cta-row{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s6)}.btn{display:inline-block;padding:.8em 1.4em;font-family:var(--font-body);font-weight:600;font-size:var(--text-base);text-decoration:none;cursor:pointer;border:1.5px solid var(--ink)}.btn-primary{background:var(--ink);color:var(--paper)}.btn-primary:hover{background:var(--green);border-color:var(--green);color:#fff}.btn-secondary{background:transparent;color:var(--ink)}.btn-secondary:hover{background:var(--paper-deep)}.engine-strip{margin-top:var(--s6);padding-top:var(--s4);border-top:1px solid var(--rule);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-soft);letter-spacing:.06em}.specimen{border:1px solid var(--rule);background:#fff;padding:var(--s5)}.specimen-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--s4);align-items:center;padding-bottom:var(--s4);border-bottom:1px solid var(--rule)}.specimen ul{list-style:none;padding:0;margin-top:var(--s4)}.specimen li{padding-block:var(--s3);border-bottom:1px solid var(--rule);font-size:var(--text-sm);color:var(--ink-soft)}.specimen li:last-child{border-bottom:0}
.stamp{display:grid;place-items:center;inline-size:4.5rem;block-size:4.5rem;font-family:var(--font-display);font-weight:600;font-size:2.6rem;color:#fff;background:var(--grade-c);box-shadow:0 0 0 3px var(--paper),0 0 0 4.5px currentColor}.stamp-lg{inline-size:6.5rem;block-size:6.5rem;font-size:4rem}.stamp[data-grade=A]{background:var(--grade-a)}.stamp[data-grade=B]{background:var(--grade-b)}.stamp[data-grade=C]{background:var(--grade-c)}.stamp[data-grade=D]{background:var(--grade-d)}.stamp[data-grade=F]{background:var(--grade-f)}.card-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s5);align-items:start;padding-block:var(--s7) var(--s6);border-bottom:1px solid var(--rule)}@media(max-width:40rem){.card-hero{grid-template-columns:minmax(0,1fr)}.card-hero .stamp-lg{order:-1}}.card-hero .meta{color:var(--ink-soft);font-size:var(--text-sm);margin-top:var(--s3)}.scores{padding-block:var(--s6);border-bottom:1px solid var(--rule)}.score-row{display:grid;grid-template-columns:minmax(9rem,16rem) minmax(0,1fr) 3ch;gap:var(--s4);align-items:center;padding-block:var(--s3)}@media(max-width:40rem){.score-row{grid-template-columns:minmax(0,1fr) 3ch}.score-row .score-label{grid-column:1/-1;padding-bottom:var(--s1)}}.score-label{font-weight:600}.score-label small{display:block;font-weight:400;color:var(--ink-soft);font-size:var(--text-xs)}.score-track{block-size:.6rem;background:var(--paper-deep)}.score-fill{block-size:100%;background:var(--green);inline-size:var(--w,0%)}.score-num{font-family:var(--font-mono);font-size:var(--text-sm);text-align:right}
.findings{padding-block:var(--s6)}.finding{border:1px solid var(--rule);background:#fff;padding:var(--s4) var(--s5);margin-bottom:var(--s4);position:relative;overflow:hidden}.finding-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s2) var(--s3)}.sev{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;padding:.1em .5em;color:#fff}.sev-high{background:var(--grade-f)}.sev-med{background:var(--grade-d)}.sev-low{background:var(--ink-soft)}.sev-pos{background:var(--grade-b)}.engine-chip{font-family:var(--font-mono);font-size:var(--text-xs);border:1px solid var(--rule);padding:.1em .5em;color:var(--ink-soft)}.finding-claim{font-weight:600}.tone-positive{--tone:#2F6E4E}.tone-neutral{--tone:#6F756B}.tone-negative{--tone:#A43E2B}.finding::after,.answer::after{content:"";position:absolute;top:0;right:0;border-top:1.05rem solid var(--tone,var(--rule));border-left:1.05rem solid transparent}.tone-icon{display:inline-grid;place-items:center;inline-size:1.25rem;block-size:1.25rem;margin-right:var(--s1);border:1px solid var(--tone,var(--rule));color:var(--tone,var(--ink-soft));font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;line-height:1;vertical-align:middle}.evidence{margin-top:var(--s3);padding:var(--s3) var(--s4);border-left:3px solid var(--green);background:var(--paper-deep);font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.55;color:var(--ink);overflow-wrap:break-word}.tone-negative .evidence{border-left-color:var(--tone)}.tone-positive .evidence{border-left-color:var(--tone)}.evidence cite{display:block;margin-top:var(--s2);font-style:normal;font-size:var(--text-xs);color:var(--ink-soft)}.answers{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s6);padding-block:var(--s6)}@media(max-width:56rem){.answers{grid-template-columns:minmax(0,1fr)}}.answers h2{margin-bottom:var(--s2)}.answers .col-note{color:var(--ink-soft);font-size:var(--text-sm);margin-bottom:var(--s4)}.answer{border:1px solid var(--rule);background:#fff;padding:var(--s4);margin-bottom:var(--s4);position:relative;overflow:hidden}.answer-head{display:flex;justify-content:space-between;gap:var(--s3);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-soft);margin-bottom:var(--s2)}.answer-head>span:first-child{display:flex;align-items:center;gap:var(--s1)}.answer-q{font-weight:600;font-size:var(--text-sm);margin-bottom:var(--s2)}.answer-a{font-size:var(--text-sm);color:var(--ink)}
.wizard{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:var(--s7);align-items:start;padding-block:var(--s6)}@media(max-width:56rem){.wizard{grid-template-columns:minmax(0,1fr)}}.progress{block-size:.4rem;background:var(--paper-deep);margin-bottom:var(--s6)}.progress-fill{block-size:100%;background:var(--green);inline-size:var(--w,16%)}.step-card{border:1px solid var(--rule);background:#fff;padding:var(--s6)}.step-count{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-soft);letter-spacing:.08em}.step-card h1{font-size:var(--text-h2);margin-block:var(--s3) var(--s4)}.step-help{color:var(--ink-soft)}.field{margin-top:var(--s5)}.field label{display:block;font-weight:600;margin-bottom:var(--s2)}.field input[type=text],.field input[type=email],.field input[type=url],.field select{inline-size:100%;padding:.7em .9em;border:1.5px solid var(--ink);background:var(--paper)}.field input:focus,.field select:focus{outline:3px solid var(--green-soft);border-color:var(--green)}.check{display:flex;gap:var(--s3);align-items:start;margin-top:var(--s4);font-size:var(--text-sm);color:var(--ink-soft);max-width:var(--measure)}.wizard-nav{display:flex;justify-content:space-between;margin-top:var(--s5)}.aside-panel{border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:var(--s5)}.aside-panel h2{font-size:var(--text-h3);margin-bottom:var(--s4)}.aside-panel p{font-size:var(--text-sm);color:#C9CCC2;margin-bottom:var(--s3)}.aside-panel strong{color:var(--paper)}.probe-preview{list-style:none;padding:0;margin-top:var(--s4)}.probe-preview li{font-family:var(--font-mono);font-size:var(--text-sm);padding:var(--s3);border:1px solid var(--rule);background:var(--paper-deep);margin-bottom:var(--s2)}.probe-preview li::before{content:"→ ";color:var(--green)}
.prose{max-width:var(--measure);margin-inline:auto;padding-block:var(--s7)}.prose h1{margin-bottom:var(--s5)}.prose h2{margin-block:var(--s6) var(--s3)}.prose p,.prose li{margin-bottom:var(--s4)}.prose ul{padding-left:1.2em}.muted{color:var(--ink-soft)}.mono{font-family:var(--font-mono)}.rule-top{border-top:1px solid var(--rule);padding-top:var(--s5);margin-top:var(--s5)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
