:root{--ink:#172e3b;--teal:#096c63;--muted:#59707a;--line:#dbe4e7;--paper:#f3f6f7}*{box-sizing:border-box}body{margin:0;font:16px/1.65 system-ui,sans-serif;color:var(--ink);background:var(--paper)}a{color:var(--teal);text-underline-offset:4px}header{background:#fff;border-bottom:1px solid var(--line)}nav{max-width:1180px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:22px 24px;gap:20px}.brand{font-size:19px;font-weight:750;color:var(--ink);text-decoration:none}.brand span{background:var(--teal);color:white;padding:5px 9px;margin-right:9px;border-radius:5px}nav div{display:flex;gap:25px;font-size:14px}main{max-width:1180px;margin:auto;padding:24px}.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--teal);font-weight:750}h1{font:500 clamp(2rem,4vw,3.25rem)/1.12 Georgia,serif;letter-spacing:-.025em;margin:12px 0 16px}h2{font:500 1.8rem/1.2 Georgia,serif}h3{font-size:1.08rem}p{margin:0 0 20px}.intro{max-width:750px;color:var(--muted)}.layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px}.card{background:white;border:1px solid var(--line);border-radius:12px;padding:30px}.step{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{display:block;font-size:14px;font-weight:650}input,select,textarea{font:inherit;width:100%;border:1px solid #a9bac1;border-radius:6px;padding:12px;background:#fff;color:var(--ink);margin-top:7px}input:focus,select:focus,textarea:focus{outline:3px solid #b0ded9;outline-offset:2px}fieldset{border:0;padding:0;margin:24px 0}legend{font-size:14px;font-weight:650}.hint{font-size:14px;color:var(--muted);margin:8px 0 0}button{font:650 16px system-ui;border:0;border-radius:6px;padding:15px 25px;background:var(--teal);color:white;cursor:pointer}button:hover{background:#07564f}button:focus-visible,a:focus-visible{outline:3px solid #b77c22;outline-offset:4px}.ad{min-height:92px;border:1px dashed #cad5da;background:#edf1f3;display:grid;place-items:center;color:#677b84;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 26px}.ad.middle{margin:36px 0;min-height:100px}.ad.side{min-height:250px;margin-top:24px}.result{background:#163e46;color:white;border-radius:10px;padding:30px}.result h2{font:500 clamp(1.7rem,3.3vw,2.7rem) Georgia,serif;margin:12px 0}.result .hint{color:#c3d9dc}.breakdown{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-top:1px solid #4b6c71;padding-top:20px;margin-top:22px}.breakdown strong{display:block;font-size:22px}.disclaimer{border-left:4px solid #be8a34;background:#fff7e8;padding:22px;font-size:14px;margin-top:24px}.sidebar h2{font-size:1.5rem}.sidebar ol{padding-left:20px}.sidebar li{margin:14px 0}.guides{margin:50px 0}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.guide-grid a{display:block;color:var(--ink);text-decoration:none}.guide-grid a:hover{border-color:var(--teal)}.guide-grid h3{font:500 1.3rem/1.35 Georgia,serif}.guide-grid small{color:var(--teal)}footer{border-top:1px solid var(--line);padding:30px 24px;max-width:1180px;margin:30px auto;font-size:14px;color:var(--muted)}footer div{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:15px}.prose{max-width:800px;margin:24px auto;background:white;padding:40px;border:1px solid var(--line);border-radius:10px}.prose h2{margin-top:36px}.prose li{margin-bottom:10px}.prose table{border-collapse:collapse;width:100%;font-size:14px}.prose td,.prose th{padding:12px;border:1px solid var(--line);text-align:left}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:white;padding:10px;z-index:5}.error{color:#a12626}.hidden{display:none}@media(max-width:850px){.layout{grid-template-columns:1fr}.sidebar{display:none}.guide-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){nav{padding:16px;align-items:flex-start}nav div{gap:12px}.brand{font-size:15px}main{padding:18px}.card,.result,.prose{padding:22px}.fields,.guide-grid{grid-template-columns:1fr}h1{font-size:2.15rem}.breakdown{gap:10px}.breakdown strong{font-size:19px}.ad{min-height:70px}.prose{margin:0}.prose table{display:block;overflow:auto}}
