*{box-sizing:border-box}html{color-scheme:light;background:#f5f4ef;color:#172a29;font-family:system-ui,sans-serif;line-height:1.65}body{margin:0}.wrap{max-width:1040px;margin:auto;padding:28px}header{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid #d1d8cf}.brand{font-size:23px;font-weight:750;text-decoration:none}.brand span{color:#426553}nav{display:flex;gap:24px}a{color:#185642;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}h1{font-size:clamp(2.2rem,5vw,3.7rem);line-height:1.12;letter-spacing:-.045em;max-width:850px;margin:24px 0}h2{line-height:1.25;font-size:1.45rem}h3{margin-bottom:8px}.eyebrow{font-size:12px;letter-spacing:.15em;font-weight:700;margin-top:34px}.badge{display:inline-block;font-size:11px;letter-spacing:.06em;border:1px solid #426553;border-radius:30px;padding:5px 12px}.lede{font-size:20px;max-width:720px;color:#425b53;margin-bottom:36px}.panel{background:#fff;border:1px solid #c5d1c6;border-radius:16px;padding:28px;margin:24px 0;box-shadow:0 5px 16px #152c2210}.cards{display:grid;grid-template-columns:1fr 1fr;gap:22px}.cards a{display:block;text-decoration:none}.measurement{background:#e8eee7}label{display:block;font-weight:650;margin:14px 0 6px}input,select,button{font:inherit;min-height:48px;border-radius:8px}input,select{width:100%;max-width:500px;border:1px solid #677d70;padding:10px 12px;background:#fff;color:#172a29}button{border:1px solid #24533f;background:#24533f;color:#fff;padding:10px 20px;cursor:pointer;font-weight:650}.secondary{background:transparent;color:#214d3b}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}button:disabled{opacity:.6;cursor:wait}:focus-visible{outline:3px solid #7355b0;outline-offset:4px}.result{margin-top:22px;padding:18px 22px;background:#f0f5ef;border-radius:10px}.result p{font-size:25px;margin:0}.error{color:#a52020;font-weight:600}.muted,.notes,footer{color:#465e54}.notes{max-width:760px}.reading{max-width:700px}.reading section{margin:32px 0}.reading p{font-size:18px;line-height:1.8}footer{border-top:1px solid #c5d1c6;font-size:14px}summary{cursor:pointer;min-height:36px}.skip{position:absolute;top:-100px;background:#fff;padding:12px;z-index:10}.skip:focus{top:8px}@media(max-width:600px){.wrap{padding:20px}header{align-items:flex-start;flex-direction:column}nav{gap:18px}.panel{padding:20px}.cards{grid-template-columns:1fr;gap:0}.badge{font-size:9px}h1{font-size:2.35rem}}.tool-page header{padding-top:20px;padding-bottom:20px}.tool-page header nav{gap:18px;font-size:14px}.test-label{font-size:10px;letter-spacing:.1em;color:#5b6b60;margin:18px 0 10px}.tool-page h1{font-size:clamp(1.9rem,4vw,3rem);margin:14px 0;letter-spacing:-.035em}.tool-lede{font-size:18px;margin:12px 0 22px;max-width:740px;color:#40584d}.calculator{margin:16px 0 28px;padding:24px}.calculator h2{font-size:18px;margin:0 0 16px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fields label{margin-top:0}.calculator input,.calculator select{max-width:none}.calculator small{display:block;font-size:12px;color:#4a5e53;margin-top:4px}.calculator .error:empty{display:none}.calculator button{margin-top:18px}.result-label{font-size:10px!important;letter-spacing:.12em;font-weight:700;margin:0 0 8px!important}.calculator #tool-result{font-size:clamp(1.7rem,4vw,2.4rem);font-weight:700;overflow-wrap:anywhere}.result-detail{font-size:14px!important;margin-top:10px!important;overflow-wrap:anywhere}.explanation{max-width:740px}.explanation h2{margin-top:28px}.formula{border-left:3px solid #3f7050;padding:12px 18px;background:#e8eee7;font-family:ui-monospace,monospace;overflow-wrap:anywhere}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;padding:12px;border-bottom:1px solid #c5d1c6}caption{text-align:left;font-weight:700;margin:12px 0}@media(max-width:600px){.tool-page .wrap{padding:16px}.tool-page header{gap:10px}.tool-page .brand{font-size:20px}.tool-page h1{font-size:1.9rem}.tool-lede{font-size:16px;margin-bottom:16px}.calculator{padding:18px}.fields{gap:14px}.fields label{font-size:14px}.calculator input,.calculator select{min-width:0;padding:10px 8px;font-size:16px}.test-label{margin-top:8px}.tool-page nav a{min-height:30px;display:inline-flex;align-items:center}.tool-page .measurement{margin-top:30px}}@media(max-width:360px){.fields{grid-template-columns:1fr;gap:12px}.tool-page h1{font-size:1.7rem}}
