*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;color:#162940;background:#f3f5fa}.wrap,.container{width:min(1180px,92%);margin:auto}.intro{background:#3d4c91;color:white;padding:64px 0 44px}.intro h1{font-size:clamp(32px,4vw,54px);max-width:850px;margin:15px 0}.intro p{max-width:800px;line-height:1.6}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em}.note{font-size:14px;opacity:.9}.layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:32px 0}.card{background:white;border:1px solid #dce2ef;border-radius:16px;padding:28px;margin-bottom:20px}h2{font-size:24px;margin-top:0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}label{font-size:14px;font-weight:700}label span{display:block;font-size:12px;color:#607089;margin:5px 0}input,select,textarea{display:block;width:100%;padding:12px;border:1px solid #a7b4cd;border-radius:8px;font:inherit;margin-top:8px}input:focus,select:focus,textarea:focus{outline:3px solid #c8d6fc}summary{cursor:pointer;font-weight:800;line-height:1.5}.card p{font-size:14px;line-height:1.6;color:#53637a}.results{align-self:start;position:sticky;top:24px}.metric{background:#3d4c91;color:white;border-radius:12px;padding:24px}.metric strong{display:block;font-size:36px;margin-top:10px}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.metrics span{display:block;font-size:13px;color:#53637a}.metrics strong{display:block;font-size:24px;margin-top:8px}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:right;padding:12px 5px;border-bottom:1px solid #e5e8ef}th:first-child,td:first-child{text-align:left}.table-scroll{overflow:auto}.cta{display:block;text-align:center;background:#dd7127;color:white;padding:15px;border-radius:8px;text-decoration:none;font-weight:700}button{width:100%;padding:12px;background:white;color:#3d4c91;border:1px solid #3d4c91;border-radius:8px;margin-top:12px;cursor:pointer}.explanation{margin-top:10px}footer{padding:24px 0}#error{color:#a52222;font-weight:700}@media(max-width:850px){.layout{grid-template-columns:1fr}.results{position:static}}@media(max-width:480px){.fields{grid-template-columns:1fr}.card{padding:20px}.metric strong{font-size:29px}}@media print{header,footer,.cta,button{display:none!important}.layout{display:block}.card{break-inside:avoid}.results{position:static}details:not([open]){display:none}}