:root{color:#17213a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f6f8fb;font-family:Inter,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}.portal{flex-direction:column;min-height:100vh;display:flex}.site-header{background:#fff;border-bottom:1px solid #e6ebf1;justify-content:space-between;align-items:center;height:76px;padding:0 max(24px,50vw - 560px);display:flex}.brand{color:#17213a;align-items:center;gap:12px;font-size:20px;font-weight:760;text-decoration:none;display:flex}.brand small{color:#64748b;letter-spacing:.11em;text-transform:uppercase;font-size:11px;font-weight:500;display:block}.brand-mark{color:#fff;background:#155d83;border-radius:12px;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.header-label{color:#64748b;font-size:13px}.main{flex:1;width:min(100% - 32px,1040px);margin:54px auto}.welcome,.state-card,.quote-card{background:#fff;border:1px solid #e5eaf0;border-radius:22px;box-shadow:0 14px 40px #1f355012}.welcome{max-width:760px;margin:10vh auto;padding:64px 7%}.welcome h1{letter-spacing:-.04em;margin:16px 0;font-size:clamp(32px,5vw,52px)}.welcome p{color:#64748b;font-size:18px;line-height:1.65}.notice{color:#315c73;background:#f1f7fa;border-radius:14px;margin-top:36px;padding:18px 22px}.state-card{text-align:center;padding:52px}.quote-card{padding:clamp(22px,4vw,46px)}.eyebrow{color:#18769a;letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:750}.quote-heading{justify-content:space-between;align-items:start;gap:24px;display:flex}.quote-heading h1{letter-spacing:-.04em;margin:8px 0;font-size:38px}.quote-heading p{color:#64748b;margin:0}.status{white-space:nowrap;color:#166079;background:#eaf4f6;border-radius:100px;padding:8px 14px;font-size:13px;font-weight:650}.quote-meta{border-top:1px solid #e6ebf1;border-bottom:1px solid #e6ebf1;gap:70px;margin:36px 0;padding:20px 0;display:flex}.quote-meta div{flex-direction:column;gap:7px;display:flex}.quote-meta span,.muted{color:#68788b}.quote-meta strong{font-size:14px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:680px}th{color:#697b8e;text-transform:uppercase;letter-spacing:.05em;text-align:left;border-bottom:1px solid #dbe4ed;padding:16px 12px;font-size:12px;font-weight:700}td{border-bottom:1px solid #edf1f5;padding:19px 12px;font-size:14px}td strong,td small{display:block}td small{color:#8a99a9;margin-top:5px}.numeric{text-align:right}.price-input{text-align:right;max-width:120px}.total{justify-content:flex-end;align-items:baseline;gap:34px;padding:26px 10px;display:flex}.total span{color:#697b8e}.total strong{letter-spacing:-.03em;font-size:26px}.terms{background:#f7f9fb;border-radius:14px;padding:18px 22px}.terms h2,.response h2{margin:0 0 9px;font-size:17px}.terms p{white-space:pre-wrap;color:#607187;margin:0;line-height:1.6}.response{border-top:1px solid #e6ebf1;margin-top:30px;padding-top:30px}.response .muted{margin:0 0 24px;font-size:14px}.response label{margin:18px 0;font-size:13px;font-weight:700;display:block}.response input,.response textarea{color:#17213a;background:#fff;border:1px solid #d3dde7;border-radius:10px;outline-color:#1285a7;width:100%;margin-top:9px;padding:12px 14px;display:block}.response textarea{resize:vertical;min-height:90px}.counter-fields{background:#f7f9fb;border:1px solid #e6ebf1;border-radius:15px;margin:20px 0;padding:20px}.counter-fields h3{margin:0 0 8px}.actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.actions button{color:#29465a;background:#fff;border:1px solid #d4dfe9;border-radius:10px;padding:12px 18px;font-weight:700}.actions .primary{color:#fff;background:#126884;border-color:#126884}.actions .counter-button{color:#fff;background:#b76c16;border-color:#b76c16}.error{color:#bd3131}.result{color:#17644e;background:#e8f5f0;border-radius:12px;margin-top:24px;padding:17px;font-weight:700}footer{text-align:center;color:#8b9bae;padding:24px;font-size:12px}@media (width<=640px){.site-header{height:66px}.main{margin:25px auto}.quote-heading{display:block}.status{margin-top:18px;display:inline-block}.quote-meta{gap:28px}.total{justify-content:space-between;gap:12px}.total strong{font-size:20px}.welcome{padding:40px 24px}.actions button{flex:45%}}
