*{box-sizing:border-box}body{margin:0;background:#f4f7fc;color:#152341;font:16px/1.65 system-ui,sans-serif}a{color:#245bd7}header,main,footer{max-width:860px;margin:auto;padding:28px 24px}header{display:flex;justify-content:space-between;gap:20px;align-items:center}header a{text-decoration:none}.brand{font-size:23px;font-weight:800;color:#152341}.eyebrow{color:#245bd7;font-weight:700;margin-top:20px}h1{font-size:clamp(36px,7vw,58px);line-height:1.12;letter-spacing:-2px;margin:16px 0}h2{font-size:24px;line-height:1.3;margin-top:0}.intro{font-size:19px;color:#53617a;max-width:700px}form{margin-top:38px;background:white;padding:34px;border:1px solid #e1e7f1;border-radius:18px;box-shadow:0 12px 35px #13265308}label{display:block;font-weight:600;margin:20px 0}label span,small{color:#596579;font-weight:400}input,textarea{display:block;width:100%;min-width:0;margin-top:7px;padding:12px 14px;font:inherit;border:1px solid #aebbd0;border-radius:7px;background:white;color:#152341}input:focus,textarea:focus{outline:3px solid #c6d9ff;border-color:#245bd7}textarea{resize:vertical}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid label{margin-bottom:0}fieldset{border:1px solid #dce4f2;border-radius:10px;margin:26px 0;padding:8px 20px 20px}legend{font-weight:700;padding:0 8px}small{display:block;font-size:13px}fieldset label{margin-bottom:8px}.privacy{font-size:13px;color:#596579}.error{padding:14px;border:1px solid #e5aaaa;border-radius:7px;background:#fff2f2;color:#8e2020}button,.button{display:inline-block;border:0;border-radius:8px;padding:14px 25px;background:#245bd7;color:white;font:600 16px system-ui;text-decoration:none;cursor:pointer}button:hover,.button:hover{background:#1745ae}.trap{position:absolute;left:-10000px;overflow:hidden;width:1px;height:1px}footer{color:#596579;font-size:13px}@media(max-width:560px){.grid{grid-template-columns:1fr;gap:0}form{padding:22px 18px}header,main,footer{padding:20px 16px}header>a:last-child{font-size:13px}h1{letter-spacing:-1px}fieldset{padding:8px 12px 18px}button{width:100%}}

/* Match public website navigation without applying form button styles. */
.nav .nav-toggle { padding:0; border-radius:0; background:none; width:28px; height:20px; }
.nav .btn { padding:9px 20px; }
.nav a { text-decoration:none; }
main { padding-top:110px; }
@media(max-width:640px) { main { padding-top:150px; } }
