*{box-sizing:border-box}.cf{background:#fff;padding:36px;max-width:640px;margin:auto;font-family:Arial,sans-serif}.cf-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#025b97;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #025b97}.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cf-group{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.cf-group label{font-size:16px;font-weight:600;color:#222}.cf-group input[type=text],.cf-group input[type=email],.cf-group textarea{width:100%;padding:14px 16px;border:1.5px solid #ccc;border-radius:7px;font-size:16px;color:#333;outline:none;font-family:Arial,sans-serif}.cf-group input:focus,.cf-group textarea:focus{border-color:#025b97;box-shadow:0 0 0 3px rgb(2 91 151 / .15)}.radio-group{display:flex;gap:24px;margin-top:6px}.radio-group label{display:flex;align-items:center;gap:8px;font-size:16px;color:#333;cursor:pointer;font-weight:400}.radio-group input[type=radio]{width:18px;height:18px;accent-color:#025b97}.budget-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-top:8px}.budget-opt{display:flex;align-items:center;gap:10px;padding:14px 16px;border:1.5px solid #ddd;border-radius:7px;cursor:pointer;font-size:16px;color:#333}.budget-opt input[type=radio],.budget-opt input[type=checkbox]{width:18px;height:18px;accent-color:#025b97}.cf-submit{width:100%;padding:16px;background:#025b97;color:#fff;border:none;border-radius:8px;font-size:17px;font-weight:700;cursor:pointer;margin-top:20px;letter-spacing:.02em}.cf-submit:hover{background:#01467a}.cf-submit[disabled]{opacity:.7;cursor:not-allowed}.cf-msg{margin-top:14px;padding:14px;border-radius:7px;font-size:15px;display:none}.cf-msg.success{background:#e6f4ea;color:#1a7a3a;display:block}.cf-msg.error{background:#fdecea;color:#c0392b;display:block}.qf-preview-note{background:#f4f8fb;color:#5b6b79;display:block}textarea{resize:vertical;min-height:90px}@media (max-width:640px){.cf{padding:24px}.cf-row,.budget-grid{grid-template-columns:1fr}.radio-group{gap:16px;flex-wrap:wrap}}