.gsf-container{--gsf-font:"Source Sans Pro",Arial,sans-serif;--gsf-color-primary:#055c8a;--gsf-color-primary-hover:#377da1;--gsf-color-primary-light:#ebf5fa;--gsf-color-primary-ring:rgba(5,92,138,.25);--gsf-color-cta:#12d678;--gsf-color-cta-hover:#2cea88;--gsf-color-cta-ring:rgba(18,214,120,.3);--gsf-color-text:#02293d;--gsf-color-text-secondary:#377da1;--gsf-color-text-muted:#7ba4ba;--gsf-color-surface:#fff;--gsf-color-bg:#f8fafc;--gsf-color-border:#e2e8f0;--gsf-color-border-focus:var(--gsf-color-primary);--gsf-color-success:#12d678;--gsf-color-success-light:#ecfdf5;--gsf-color-success-ring:rgba(18,214,120,.2);--gsf-color-error:#dc2626;--gsf-color-error-light:#fef2f2;--gsf-color-error-ring:rgba(220,38,38,.15);--gsf-radius-sm:8px;--gsf-radius-md:12px;--gsf-radius-lg:16px;--gsf-radius-xl:20px;--gsf-shadow-sm:0 1px 2px rgba(0,0,0,.05);--gsf-shadow-md:0 4px 12px rgba(0,0,0,.08);--gsf-shadow-lg:0 12px 40px rgba(0,0,0,.12);--gsf-shadow-card:0 1px 3px rgba(0,0,0,.04),0 6px 24px rgba(0,0,0,.06);--gsf-transition-fast:150ms ease;--gsf-transition-base:200ms ease;--gsf-transition-slow:300ms ease;color:var(--gsf-color-text);font-family:var(--gsf-font);margin:0 auto;max-width:560px;padding:32px 24px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.gsf-inner{background:var(--gsf-color-surface);border:1px solid var(--gsf-color-border);border-radius:var(--gsf-radius-xl);box-shadow:var(--gsf-shadow-card);min-height:380px;padding:40px 36px;position:relative;transition:min-height var(--gsf-transition-slow)}.gsf-sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.gsf-progress{margin-bottom:32px}.gsf-progress-bar{background:var(--gsf-color-bg);border-radius:3px;height:6px;margin-bottom:12px;overflow:hidden}.gsf-progress-fill{background:var(--gsf-color-cta);border-radius:3px;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1);width:25%}.gsf-progress-label{color:var(--gsf-color-text-secondary);display:block;font-family:var(--gsf-font);font-size:13px;font-weight:500;letter-spacing:.02em;text-align:center}.gsf-screen{display:none;opacity:0;transform:translateY(8px);transition:opacity var(--gsf-transition-slow),transform var(--gsf-transition-slow)}.gsf-screen--active{display:block;opacity:1;transform:translateY(0)}.gsf-fieldset{border:none;margin:0;padding:0}.gsf-heading{color:var(--gsf-color-text);font-family:var(--gsf-font);font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1.25;margin:0 0 8px;outline:none}.gsf-subheading{color:var(--gsf-color-text-secondary);font-family:var(--gsf-font);font-size:15px;line-height:1.6;margin:0 0 28px}.gsf-fields{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.gsf-field-row--half{display:flex;gap:16px}.gsf-field-row--half .gsf-field-group{flex:1}.gsf-field-group{display:flex;flex-direction:column}.gsf-label{font-size:14px;font-weight:600;letter-spacing:.01em;margin-bottom:6px}.gsf-input,.gsf-label,.gsf-select{color:var(--gsf-color-text);font-family:var(--gsf-font)}.gsf-input,.gsf-select{-webkit-appearance:none;appearance:none;background:var(--gsf-color-surface);border:1.5px solid var(--gsf-color-border);border-radius:var(--gsf-radius-sm);box-sizing:border-box;font-size:16px;line-height:1.5;outline:none;padding:12px 16px;transition:border-color var(--gsf-transition-fast),box-shadow var(--gsf-transition-fast),background-color var(--gsf-transition-fast);width:100%}.gsf-input:hover,.gsf-select:hover{border-color:#cbd5e1}.gsf-input:focus,.gsf-select:focus{background:var(--gsf-color-surface);border-color:var(--gsf-color-border-focus);box-shadow:0 0 0 3px var(--gsf-color-primary-ring)}.gsf-input::placeholder{color:var(--gsf-color-text-muted)}.gsf-select-wrapper{position:relative}.gsf-select-wrapper .gsf-select{padding-right:44px}.gsf-select-arrow{pointer-events:none;position:absolute;right:16px;top:50%;transform:translateY(-50%);transition:transform var(--gsf-transition-fast)}.gsf-select-arrow path{fill:var(--gsf-color-text-secondary)}.gsf-select:focus~.gsf-select-arrow path{fill:var(--gsf-color-cta)}.gsf-input--error,.gsf-input--error:focus,.gsf-select--error,.gsf-select--error:focus{border-color:var(--gsf-color-error);box-shadow:0 0 0 3px var(--gsf-color-error-ring)}.gsf-input--valid,.gsf-select--valid{border-color:var(--gsf-color-success)}.gsf-input--valid:focus,.gsf-select--valid:focus{border-color:var(--gsf-color-success);box-shadow:0 0 0 3px var(--gsf-color-success-ring)}.gsf-error{align-items:center;color:var(--gsf-color-error);display:flex;font-family:var(--gsf-font);font-size:13px;font-weight:500;gap:4px;margin-top:6px;min-height:0;transition:all var(--gsf-transition-fast)}.gsf-error:empty{display:none}.gsf-field-help{color:var(--gsf-color-text-secondary);font-family:var(--gsf-font);font-size:13px;margin-top:6px}.gsf-field-help:empty{display:none}.gsf-field-help--loading{color:var(--gsf-color-text-muted)}.gsf-field-help--suggestion{color:var(--gsf-color-primary);cursor:pointer;font-weight:500}.gsf-field-help--suggestion:hover{font-family:var(--gsf-font);font-weight:500;text-decoration:underline}.gsf-checkbox-group{align-items:flex-start;background:var(--gsf-color-bg);border:1px solid var(--gsf-color-border);border-radius:var(--gsf-radius-sm);display:flex;gap:12px;padding:16px;transition:border-color var(--gsf-transition-fast)}.gsf-checkbox-group:has(.gsf-checkbox:checked){background:#ecfdf5;border-color:var(--gsf-color-cta)}.gsf-checkbox{accent-color:var(--gsf-color-primary);border-radius:4px;cursor:pointer;height:20px;margin-top:2px;min-width:20px;width:20px}.gsf-checkbox-label{color:var(--gsf-color-text-secondary);cursor:pointer;font-family:var(--gsf-font);font-size:12px;line-height:1.6}.gsf-checkbox-label a{color:var(--gsf-color-primary);text-decoration:underline;text-underline-offset:2px}.gsf-checkbox-label a:hover{color:var(--gsf-color-primary-hover);font-family:var(--gsf-font)}.gsf-disclaimer{color:var(--gsf-color-text-muted);font-family:var(--gsf-font);font-size:12px;line-height:1.6;margin-bottom:24px}.gsf-disclaimer a{color:var(--gsf-color-primary);text-decoration:underline;text-underline-offset:2px}.gsf-disclaimer a:hover{color:var(--gsf-color-primary-hover);font-family:var(--gsf-font)}.gsf-button-container{align-items:center;display:flex;gap:12px}.gsf-button{align-items:center;border:none;border-radius:var(--gsf-radius-sm);cursor:pointer;display:inline-flex;font-family:var(--gsf-font);font-size:15px;font-weight:600;gap:8px;justify-content:center;letter-spacing:.01em;line-height:1;min-height:48px;padding:14px 28px;position:relative;transition:all var(--gsf-transition-base)}.gsf-button--primary{background:var(--gsf-color-cta);box-shadow:0 1px 2px rgba(0,0,0,.05),0 2px 8px rgba(18,214,120,.25);color:#fff;flex:1}.gsf-button--primary:hover{background:var(--gsf-color-cta-hover);box-shadow:0 2px 4px rgba(0,0,0,.08),0 4px 16px rgba(44,234,136,.3);font-family:var(--gsf-font);font-weight:600;transform:translateY(-1px)}.gsf-button--primary:active{box-shadow:0 1px 2px rgba(0,0,0,.05);transform:translateY(0)}.gsf-button--primary:focus-visible{outline:2px solid var(--gsf-color-cta);outline-offset:2px}.gsf-button--primary:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.gsf-button--back{background:transparent;border-radius:var(--gsf-radius-sm);color:var(--gsf-color-text-secondary);font-size:14px;padding:14px 16px}.gsf-button--back:hover{background:var(--gsf-color-bg);color:var(--gsf-color-text);font-family:var(--gsf-font);font-weight:600}.gsf-button--back:focus-visible{outline:2px solid var(--gsf-color-primary);outline-offset:2px}.gsf-button--secondary{background:var(--gsf-color-bg);border:1px solid var(--gsf-color-border);color:var(--gsf-color-text);padding:12px 24px}.gsf-button--secondary:hover{background:#f1f5f9;border-color:#cbd5e1;font-family:var(--gsf-font);font-weight:600}.gsf-button--secondary:focus-visible{outline:2px solid var(--gsf-color-primary);outline-offset:2px}.gsf-button--loading .gsf-button-text{visibility:hidden}.gsf-button--loading .gsf-button-arrow{display:none}.gsf-button--loading .gsf-button-spinner{display:block}.gsf-button-spinner{animation:gsf-spin .6s linear infinite;border:2.5px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;display:none;height:20px;position:absolute;width:20px}@keyframes gsf-spin{to{transform:rotate(1turn)}}.gsf-intent-options{display:flex;flex-direction:column;gap:16px;margin-top:32px}.gsf-intent-button{align-items:center;background:var(--gsf-color-surface);border:1.5px solid var(--gsf-color-border);border-radius:var(--gsf-radius-md);box-shadow:var(--gsf-shadow-sm);color:var(--gsf-color-text);cursor:pointer;display:flex;font-family:var(--gsf-font);font-size:17px;font-weight:600;justify-content:center;letter-spacing:-.01em;min-height:68px;padding:22px 28px;transition:all var(--gsf-transition-base)}.gsf-intent-button:hover{background:#ecfdf5;border-color:var(--gsf-color-cta);box-shadow:var(--gsf-shadow-md);font-family:var(--gsf-font);font-weight:600;transform:translateY(-2px)}.gsf-intent-button:active{box-shadow:var(--gsf-shadow-sm);transform:translateY(0)}.gsf-intent-button:focus-visible{outline:2px solid var(--gsf-color-primary);outline-offset:2px}.gsf-intent-button--secondary:hover{background:var(--gsf-color-bg);border-color:var(--gsf-color-text-secondary)}.gsf-conditional{animation:gsf-slideDown var(--gsf-transition-slow) cubic-bezier(.4,0,.2,1)}@keyframes gsf-slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.gsf-dialog-overlay{align-items:center;animation:gsf-fadeIn .2s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:rgba(15,23,42,.6);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}@keyframes gsf-fadeIn{0%{opacity:0}to{opacity:1}}.gsf-dialog{animation:gsf-scaleIn .25s cubic-bezier(.4,0,.2,1);background:var(--gsf-color-surface);border:1px solid var(--gsf-color-border);border-radius:var(--gsf-radius-lg);box-shadow:var(--gsf-shadow-lg);max-height:80vh;max-width:540px;overflow-y:auto;padding:36px;width:100%}@keyframes gsf-scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.gsf-dialog-title{color:var(--gsf-color-text);font-family:var(--gsf-font);font-size:22px;font-weight:700;letter-spacing:-.02em;margin:0 0 16px}.gsf-dialog-body{color:var(--gsf-color-text-secondary);font-family:var(--gsf-font);font-size:15px;line-height:1.7;margin-bottom:16px}.gsf-dialog-body ol{margin:12px 0;padding-left:20px}.gsf-dialog-body li{margin-bottom:10px}.gsf-dialog-email{margin:16px 0 28px}.gsf-dialog-email a{color:var(--gsf-color-primary);font-size:16px;font-weight:600;text-decoration:underline;text-underline-offset:3px}.gsf-dialog-email a:hover{color:var(--gsf-color-primary-hover);font-family:var(--gsf-font)}.gsf-form-error{align-items:center;background:var(--gsf-color-error-light);border:1px solid #fecaca;border-radius:var(--gsf-radius-sm);display:flex;gap:12px;justify-content:space-between;margin-top:20px;padding:16px 20px}.gsf-form-error p{font-size:14px;font-weight:500;line-height:1.5;margin:0}.gsf-error-dismiss,.gsf-form-error p{color:var(--gsf-color-error);font-family:var(--gsf-font)}.gsf-error-dismiss{background:none;border:none;border-radius:4px;cursor:pointer;font-size:13px;font-weight:600;padding:4px 8px;transition:background var(--gsf-transition-fast);white-space:nowrap}.gsf-error-dismiss:hover{background:#fee2e2;font-family:var(--gsf-font);font-weight:600}.gsf-hp{height:0;left:-9999px;opacity:0;overflow:hidden;position:absolute;top:-9999px}@media (prefers-reduced-motion:reduce){.gsf-button,.gsf-conditional,.gsf-dialog,.gsf-dialog-overlay,.gsf-input,.gsf-intent-button,.gsf-progress-fill,.gsf-screen,.gsf-select{animation:none;transition:none}.gsf-screen--active{opacity:1;transform:none}}@media screen and (max-width:600px){.gsf-container{padding:16px 12px}.gsf-inner{border-radius:var(--gsf-radius-lg);padding:28px 20px}.gsf-heading{font-size:22px}.gsf-subheading{font-size:14px;margin-bottom:24px}.gsf-field-row--half{flex-direction:column;gap:20px}.gsf-intent-button{font-size:15px;min-height:60px;padding:18px 20px}.gsf-dialog{border-radius:var(--gsf-radius-md);padding:24px 20px}.gsf-dialog-title{font-size:19px}.gsf-button{font-size:14px;padding:12px 20px}.gsf-checkbox-group{padding:14px}}@media screen and (max-width:375px){.gsf-inner{padding:24px 16px}.gsf-heading{font-size:20px}}