:root{--bg:#fdfcf8;--ink:#141414;--mute:#5d5a52;--rule:#e2ded3;--green:#1a7a42;--onpill:#fff;--red:#c8281e;--onred:#fff;--amber:#8a5a00;--paper:#fff;--hi:#ffe66d;
--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--sans:"Helvetica Neue",Helvetica,Arial,sans-serif;--hand:"Segoe Print","Bradley Hand","Marker Felt","Chalkboard SE",cursive}
@media (prefers-color-scheme:dark){:root{--bg:#15140f;--ink:#f3f0e6;--mute:#aaa598;--rule:#2f2d25;--paper:#1d1c16;--green:#4fc07f;--onpill:#0b2a17;--red:#ff7f74;--onred:#15140f;--amber:#e0b04a;--hi:#5a4d0f}}
*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{overflow-x:hidden;margin:0;background:var(--bg);color:var(--ink);font:19px/1.65 var(--serif);-webkit-font-smoothing:antialiased}
.w{max-width:700px;margin:0 auto;padding:0 24px}.w.wide{max-width:980px}
.skip{position:absolute;left:-9999px;top:8px;background:var(--ink);color:var(--bg);padding:10px 16px;font:700 15px var(--sans);z-index:10}.skip:focus{left:8px}
header{padding:22px 0}
header .w{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.logo{font-weight:700;letter-spacing:-.02em;text-decoration:none;color:var(--ink);font-size:24px;line-height:1.2}
.logo span{font-weight:400;color:var(--mute)}
.brand-tag{display:block;font:500 12px/1.2 var(--sans);letter-spacing:.02em;color:var(--mute);margin-top:3px}
a{color:var(--ink);text-underline-offset:3px}
header a.hdr{padding:8px 0;font:700 15px var(--sans);color:var(--red);text-decoration:none;border-bottom:2px solid var(--red);white-space:nowrap}
section{padding:56px 0}
h1{font-size:clamp(42px,8.5vw,72px);line-height:1;letter-spacing:-.04em;margin:24px 0 28px;font-weight:700}
h2{font-size:clamp(28px,5vw,38px);line-height:1.12;letter-spacing:-.025em;margin:0 0 18px;font-weight:700}
h3{font-size:20px;margin:0 0 4px}
p{margin:0 0 16px;max-width:60ch}
.lede{font-size:23px;line-height:1.5;max-width:52ch}
.btn{display:inline-block;background:var(--red);color:var(--onred);padding:14px 26px;font:700 16px var(--sans);text-decoration:none;border-radius:4px;border:0;cursor:pointer}
.btn:hover{opacity:.88}
.btn:disabled{opacity:.35;cursor:not-allowed}
.btn.alt{background:none;color:var(--ink);border:2px solid var(--ink);padding:12px 24px}
:focus-visible{outline:3px solid var(--red);outline-offset:3px}
.small{font:15px/1.5 var(--sans);color:var(--mute)}
.kick{font:700 14px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin:0}
.offer{padding:22px 0;border-top:1px solid var(--rule)}.offer h3{font-size:26px;letter-spacing:-.02em;margin-bottom:2px}.offer .for{font:700 14px var(--sans);color:var(--red);margin:0 0 8px}.offer p{margin-bottom:8px}.offer .how{font:15px/1.5 var(--sans);color:var(--mute)}
.report{background:var(--paper);border:1px solid var(--rule);margin:48px 0 8px;padding:22px 24px;transform:rotate(-.6deg);box-shadow:0 2px 14px rgba(0,0,0,.07)}
.rt{margin:0 0 14px;font:600 14px/1.3 ui-monospace,Menlo,Consolas,monospace;color:var(--mute)}
.row{display:grid;grid-template-columns:150px max-content 1fr;gap:12px;align-items:start;padding:12px 0;border-top:1px solid var(--rule)}
.row b{font:600 16px var(--sans)}
.pill{background:var(--green);color:var(--onpill);font:700 14px/1.4 var(--sans);letter-spacing:.04em;text-align:center;white-space:nowrap;justify-self:start;padding:2px 12px;border-radius:99px}
.pill.open{background:var(--amber);color:var(--onred)}
.pill.red{background:var(--red);color:var(--onred)}
.note{font-family:var(--hand);color:var(--red);font-size:17px;line-height:1.35;transform:rotate(-1.2deg)}
.cap{font:14px var(--sans);color:var(--mute);margin:8px 0 22px}
@media(max-width:600px){.row{grid-template-columns:1fr auto;gap:8px 12px}.pill{justify-self:end}.note{grid-column:1/-1}}
.sym{list-style:none;padding:0;margin:0 0 24px}
.sym li{font-size:23px;line-height:1.35;padding:14px 0;border-top:1px solid var(--rule)}
.sym li:last-child{border-bottom:1px solid var(--rule)}
.lead{font-size:24px;line-height:1.4;margin:32px 0 0;font-weight:700}
.hl{background:linear-gradient(transparent 58%,var(--hi) 58%)}
ol.steps{padding-left:22px;margin:0 0 24px}ol.steps li{margin-bottom:14px;padding-left:6px}
.qs{list-style:none;padding:0;margin:0}.qs li{padding:14px 0;border-top:1px solid var(--rule)}
.who{padding-left:22px;margin:0 0 16px;max-width:60ch}.who li{margin-bottom:10px;padding-left:4px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:28px}
@media(max-width:640px){.two{grid-template-columns:1fr}}
.foot{padding:28px 24px 56px}.foot nav{display:flex;flex-wrap:wrap;gap:0 24px;margin-bottom:6px}.foot nav a{display:inline-block;padding:8px 0;font-weight:600}.foot p{margin:0}
@media(max-width:560px){.foot nav{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}}
.proof blockquote{margin:0 0 14px;padding-left:20px;border-left:4px solid var(--red);font-size:24px;line-height:1.4}.proof .by{font:15px/1.5 var(--sans);color:var(--mute);margin:0}
.mail{font-size:clamp(20px,4.5vw,28px);font-weight:700;letter-spacing:-.02em}
.sig{font-family:var(--hand);font-size:36px;color:var(--red);transform:rotate(-3deg);display:inline-block;margin-top:8px}
.faq details{border-top:1px solid var(--rule);padding:16px 0}.faq summary{cursor:pointer;font:700 17px var(--sans)}.faq details p{margin:10px 0 0}
.cal{background:#fff;border:1px solid var(--rule);border-radius:6px;overflow:hidden;margin:28px 0 20px}
.legal h2{font-size:26px;margin-top:40px}
/* tools */
.tool main{padding-bottom:40px}
.tool h1{font-size:clamp(34px,7vw,52px);line-height:1.05;letter-spacing:-.035em;margin:16px 0 18px}
.tool .lede{font-size:21px}
.tool fieldset{border:0;margin:0;padding:18px 0;border-top:1px solid var(--rule);min-width:0}
.tool legend{padding:0;font:700 17px/1.4 var(--sans);margin-bottom:10px}
.opts{display:flex;gap:8px;flex-wrap:wrap}.opts label{position:relative}
.opts input{position:absolute;opacity:0;inset:0;cursor:pointer;margin:0}
.opts span{display:block;padding:7px 16px;border:1px solid var(--rule);border-radius:99px;background:var(--paper);font:15px var(--sans)}
.opts input:checked+span{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);font-weight:700}
.opts input:focus-visible+span{outline:3px solid var(--red);outline-offset:2px}
.prog{position:sticky;top:0;background:var(--bg);padding:10px 0;border-bottom:1px solid var(--rule);font:14px var(--sans);color:var(--mute);z-index:2}
.lamprow{display:grid;grid-template-columns:14px 1fr;gap:6px 14px;border-top:1px solid var(--rule)}
.lamprow fieldset{border-top:0}
.lamp{width:14px;height:14px;border-radius:50%;background:var(--rule);margin-top:24px;transition:background .25s}
.lamprow[data-s="0"] .lamp{background:var(--green)}.lamprow[data-s="1"] .lamp{background:var(--amber)}.lamprow[data-s="2"] .lamp{background:var(--red)}
.result{margin-top:32px;padding:26px 24px;background:var(--paper);border:1px solid var(--rule);border-radius:4px}
.result h2{margin:0 0 6px;font-size:28px;line-height:1.15}
.result .sc{margin:0 0 10px;color:var(--mute);font:15px var(--sans)}
.result ul{padding-left:20px;margin:10px 0 22px}.result li{margin-bottom:8px}
.result strong{font-family:var(--sans)}
.again{background:none;border:0;color:var(--mute);font:15px var(--sans);text-decoration:underline;cursor:pointer;margin-left:16px}
.meter{height:12px;border-radius:6px;background:linear-gradient(90deg,var(--red),var(--amber),var(--green));position:relative;margin:16px 0 22px}
.meter b{position:absolute;top:-5px;width:6px;height:22px;border-radius:3px;background:var(--ink);transition:left .3s;transform:translateX(-3px)}
@media (prefers-reduced-motion:reduce){.meter b,.lamp{transition:none}}
.page{border:1px solid var(--rule);background:var(--paper);border-radius:4px;padding:8px 22px;margin:14px 0 24px}
.page dt{font:700 16px var(--sans);margin-top:14px}.page dd{margin:2px 0 14px;color:var(--mute)}
.page div+div{border-top:1px solid var(--rule)}
/* worksheet */
.ws .head,.ws .wrow{display:grid;grid-template-columns:1.4fr 150px 1.2fr 1.2fr 36px;gap:12px;align-items:start}
.ws .head{font:700 13px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--mute);padding:10px 0;border-bottom:2px solid var(--ink)}
.ws .wrow{padding:12px 0;border-bottom:1px solid var(--rule)}
.ws .lab{display:none;font:700 12px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--mute);margin-bottom:4px}
.ws textarea,.ws select{width:100%;font:15px/1.4 var(--sans);color:var(--ink);background:var(--paper);border:1px solid var(--rule);border-radius:4px;padding:8px}
.ws textarea{min-height:76px;resize:vertical}
.ws select[data-v="m"]{border-color:var(--green);box-shadow:inset 4px 0 0 var(--green)}.ws select[data-v="h"]{border-color:var(--red);box-shadow:inset 4px 0 0 var(--red)}
.ws .x{background:none;border:0;font-size:24px;color:var(--mute);cursor:pointer;line-height:1;padding:4px}
.ws .tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:22px 0;font:15px var(--sans)}
.ws .wfoot{margin-top:28px;font-weight:700}
@media(max-width:820px){.ws .head{display:none}.ws .wrow{grid-template-columns:1fr 36px;gap:10px}.ws .wrow>div{grid-column:1}.ws .wrow .x{grid-column:2;grid-row:1}.ws .lab{display:block}}
@media print{header,.foot,.ws .tools,.ws .x,.skip{display:none}body{background:#fff;color:#000;font-size:14px}.ws textarea,.ws select{border:0;padding:0;resize:none;appearance:none}}
