*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:#f4f9f9;color:#0a2a3a;font-size:16px;line-height:1.5;-webkit-text-size-adjust:100%}.preview-banner{background:#d35400;color:#fff;padding:12px 16px;text-align:center;font-weight:600;font-size:14px;position:sticky;top:0;z-index:10}.container{max-width:480px;margin:0 auto;padding:24px 16px 48px}.page-header{text-align:center;margin-bottom:24px}.page-header h1{margin:0;font-size:24px;color:#0a2a3a;font-weight:600}.page-header .subtitle{margin:4px 0 0;color:#666;font-size:14px;letter-spacing:.5px;text-transform:uppercase}.screen{background:#fff;border-radius:12px;padding:24px 20px;box-shadow:0 1px 3px #0a2a3a14}.screen h2{margin:0 0 8px;font-size:20px;color:#0a2a3a;font-weight:600}.screen-intro{margin:0 0 20px;color:#666;font-size:14px}.field{margin-bottom:18px;border:0;padding:0}.field label,.field legend{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:#0a2a3a}.req{color:#c0392b;margin-left:2px}.field input[type=text],.field input[type=tel],.field input[type=number],.field input[type=password],.field select{width:100%;height:48px;font-family:inherit;font-size:16px;padding:0 14px;border:1px solid #d3dbdf;border-radius:8px;background:#fff;color:#0a2a3a;-webkit-appearance:none;appearance:none}.field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%230A2A3A' d='M6 8 0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}.field input:focus,.field select:focus{outline:none;border-color:#028090;box-shadow:0 0 0 3px #0280902e}.field input[aria-invalid=true],.field select[aria-invalid=true]{border-color:#c0392b}.radio-row{display:flex;gap:8px}.radio{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;height:48px;border:1px solid #d3dbdf;border-radius:8px;background:#fff;cursor:pointer;font-weight:500;font-size:16px;color:#0a2a3a}.radio input{accent-color:#028090;transform:scale(1.2)}.radio:focus-within{border-color:#028090;box-shadow:0 0 0 3px #0280902e}.field-error{color:#c0392b;font-size:13px;margin-top:6px;font-weight:500}.form-error{background:#fdecea;color:#c0392b;border:1px solid #f5c6c2;padding:12px 14px;border-radius:8px;font-size:14px;margin-bottom:16px;font-weight:500}.btn{display:block;width:100%;height:48px;font-family:inherit;font-size:16px;font-weight:600;border-radius:8px;border:0;cursor:pointer;-webkit-appearance:none;appearance:none}.btn-primary{background:#028090;color:#fff}.btn-primary:hover{background:#026e7c}.btn-primary:focus{outline:none;box-shadow:0 0 0 3px #02809059}.btn-primary:disabled{background:#b7770d;cursor:not-allowed;opacity:.85}.success-icon{width:64px;height:64px;border-radius:50%;background:#02c39a;color:#fff;font-size:36px;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.success-details{margin:16px 0 24px;padding:16px;background:#f4f9f9;border-radius:8px}.success-details dt{font-size:12px;color:#666;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin-bottom:4px}.success-details dd{margin:0 0 12px;font-size:16px;color:#0a2a3a;font-weight:500;word-break:break-word}.success-details dd:last-of-type{margin-bottom:0}.center{text-align:center}.staff-banner{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 14px;background:#f4f9f9;border:1px solid #d3dbdf;border-radius:8px;margin-bottom:16px;font-size:14px}.staff-banner-label{color:#666;font-weight:500}.staff-banner-phone{color:#0a2a3a;font-weight:600;flex:1;word-break:break-word}.btn-text{background:transparent;color:#028090;border:0;padding:8px 12px;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;border-radius:6px;min-height:44px;min-width:44px}.btn-text:hover{background:#02809014}.btn-text:focus{outline:none;box-shadow:0 0 0 2px #02809059}.field-help{margin:6px 0 0;font-size:13px;color:#666;line-height:1.4}.visually-hidden{position:absolute;left:-9999px}@media(min-width:768px){.container{max-width:560px;padding-top:48px}.screen{padding:32px 28px}.page-header h1{font-size:28px}}
