.sf-root,.sf-root *{box-sizing:border-box}.sf-root{--sf-ink:#252d30;--sf-muted:#697276;--sf-accent:#496f66;--sf-border:#e1e7e4;--sf-bg:#f6f8f6;color:var(--sf-ink);width:100%;max-width:860px;margin:26px auto;font-family:inherit}.sf-root button,.sf-root input,.sf-root textarea,.sf-root select{font:inherit}.sf-root button{cursor:pointer}.sf-preview-banner{border:1px solid #a15f36;border-radius:12px;background:#fff7ed;padding:14px 18px;margin-bottom:24px;display:grid;gap:4px;color:#773c19;font-size:14px}.sf-preview-banner strong{font-size:12px;letter-spacing:.08em}.sf-hero{text-align:center;padding:18px 10px 24px}.sf-hero h2{margin:12px 0;font-size:clamp(28px,4vw,42px);line-height:1.1;color:var(--sf-ink)}.sf-hero p{color:var(--sf-muted);margin:0 auto;max-width:580px}.sf-eyebrow{font-size:11px;letter-spacing:.13em;font-weight:700;color:var(--sf-accent)}.sf-cards{display:grid;gap:14px}.sf-card{display:flex;align-items:center;gap:18px;width:100%;border:1px solid var(--sf-border);border-radius:16px;padding:20px;text-align:left;background:#fff!important;color:var(--sf-ink)!important;box-shadow:0 8px 28px rgba(19,40,32,.04);transition:transform .15s,border-color .15s}.sf-card:hover,.sf-card:focus-visible{transform:translateY(-1px);border-color:var(--sf-accent)}.sf-card-icon{width:52px;height:52px;display:grid;place-items:center;flex-shrink:0;background:#eaf1ed;color:var(--sf-accent);font-size:28px;border-radius:14px}.sf-card-copy{flex:1;display:grid;gap:6px}.sf-card-copy strong{font-size:17px}.sf-card-copy small{font-size:13px;color:var(--sf-muted);line-height:1.5}.sf-chevron{color:var(--sf-accent);font-size:30px;line-height:1}.sf-form-view{background:white;border:1px solid var(--sf-border);border-radius:18px;padding:clamp(18px,4vw,36px);box-shadow:0 10px 36px rgba(23,49,38,.05)}.sf-form-view[hidden],.sf-directory[hidden],.sf-field[hidden]{display:none!important}.sf-back{background:none!important;color:var(--sf-accent)!important;border:0!important;padding:0!important;font-size:14px!important;margin-bottom:18px}.sf-form-view h2{font-size:clamp(24px,4vw,33px);color:var(--sf-ink);margin:0 0 5px}.sf-brand{color:var(--sf-accent);font-size:13px;font-weight:600;margin:0 0 24px}.sf-info{border:1px solid var(--sf-border);background:var(--sf-bg);padding:17px 19px;border-radius:12px;font-size:14px;line-height:1.75;margin-bottom:26px}.sf-info p:last-child{margin-bottom:0}.sf-field{margin:0 0 23px}.sf-label{font-weight:650;margin-bottom:8px;font-size:15px}.sf-required{color:#a14e40}.sf-help{color:var(--sf-muted);font-size:13px;margin:0 0 10px;line-height:1.55}.sf-field input:not([type=checkbox]):not([type=radio]),.sf-field textarea,.sf-field select{width:100%;padding:12px 14px;border:1px solid #c9d4ce!important;border-radius:10px;background:white!important;box-shadow:none!important;color:var(--sf-ink)!important;min-height:45px}.sf-field input:focus-visible,.sf-field textarea:focus-visible,.sf-field select:focus-visible{outline:2px solid var(--sf-accent);outline-offset:2px}.sf-choices{display:grid;gap:10px}.sf-choice{display:flex;align-items:flex-start;gap:11px;line-height:1.4;padding:11px 12px;border:1px solid var(--sf-border);border-radius:10px;font-weight:400!important;font-size:14px;cursor:pointer}.sf-choice input{margin:3px 0 0!important;flex:0 0 auto;accent-color:var(--sf-accent);width:17px;height:17px}.sf-check{background:var(--sf-bg)}.sf-field-section h3{font-size:18px;padding-top:12px;border-top:1px solid var(--sf-border)}.sf-terms{margin:24px 0;padding:20px;border:1px solid var(--sf-border);background:var(--sf-bg);border-radius:12px;font-size:13px;line-height:1.8}.sf-terms h3{font-size:16px;margin:0 0 12px}.sf-terms p{margin:0 0 12px}.sf-signature-wrap{border:1px dashed #91a79d;border-radius:10px;background:#fff;overflow:hidden}.sf-signature{display:block;width:100%;height:170px;touch-action:none;cursor:crosshair}.sf-clear{margin-top:8px;padding:7px 12px!important;background:transparent!important;border:1px solid var(--sf-border)!important;border-radius:8px;color:var(--sf-ink)!important;font-size:13px!important}.sf-disabled-label{font-size:13px;color:#793d20;margin-top:20px}.sf-disabled-submit{width:100%;border:0!important;border-radius:12px;padding:15px!important;background:#dae5de!important;color:#526a5b!important;cursor:not-allowed!important;font-weight:650}.sf-unavailable{border:1px solid #e0e4e0;padding:22px;border-radius:12px}.sf-unavailable p{margin-bottom:0}@media(max-width:600px){.sf-card{padding:14px;gap:12px}.sf-card-icon{width:45px;height:45px}.sf-card-copy strong{font-size:15px}.sf-form-view{border-radius:12px}.sf-hero{padding-top:6px}}
/* v0.3: responsive step navigation and preview-only validation */
.sf-root .sf-step[hidden]{display:none!important}
.sf-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:4px 0 28px}
.sf-progress-item{display:flex;align-items:center;justify-content:center;text-align:center;font-size:12px;font-weight:650;line-height:1.4;border-bottom:3px solid #e1e7e4;color:var(--sf-muted);padding:10px 4px 12px}
.sf-progress-item.sf-current{border-color:var(--sf-accent);color:var(--sf-ink)}
.sf-progress-item.sf-finished{border-color:#8db3a4;color:var(--sf-accent)}
.sf-step-heading{font-size:21px!important;margin:0 0 22px!important;color:var(--sf-ink);outline:none}
.sf-step-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:22px 0 0}
.sf-step-actions button{border:1px solid var(--sf-accent)!important;border-radius:10px!important;padding:12px 18px!important;background:var(--sf-accent)!important;color:#fff!important;font-weight:650!important;font-size:14px!important;line-height:1.4!important;transition:opacity .15s}
.sf-step-actions .sf-previous{border:1px solid var(--sf-border)!important;background:#fff!important;color:var(--sf-accent)!important}
.sf-step-actions button:hover{opacity:.9}
.sf-step-actions button:focus-visible,.sf-terms summary:focus-visible{outline:3px solid #8db3a4;outline-offset:2px}
.sf-terms{padding:0;background:var(--sf-bg);overflow:hidden}
.sf-terms summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;font-size:15px;font-weight:700;cursor:pointer}
.sf-terms summary::-webkit-details-marker{display:none}
.sf-terms summary::before{content:'+';display:inline-block;font-size:19px;color:var(--sf-accent);margin-right:4px}
.sf-terms[open] summary::before{content:'−'}
.sf-expand{margin-left:auto;font-size:11px;font-weight:500;white-space:nowrap;color:var(--sf-muted)}
.sf-terms-body{padding:20px;border-top:1px solid var(--sf-border);background:#fff;max-height:440px;overflow:auto;font-size:13px;line-height:1.75}
.sf-terms-body h4{font-size:13px!important;line-height:1.5;margin:20px 0 8px!important;letter-spacing:.025em;font-weight:800;color:var(--sf-ink)}
.sf-terms-body h4:first-child{margin-top:0!important}
.sf-terms-body p{margin:0 0 12px!important}
.sf-field-error{font-size:13px;color:#9b2c2c;margin:8px 0 0;font-weight:600}
.sf-field-error[hidden]{display:none!important}
.sf-field.sf-invalid input:not([type=checkbox]):not([type=radio]),.sf-field.sf-invalid textarea,.sf-field.sf-invalid select,.sf-field.sf-invalid .sf-choices,.sf-field.sf-invalid .sf-signature-wrap{border-color:#b34141!important}
.sf-no-submit{background:#e8f0eb;color:#456558;font-size:13px;padding:13px 17px;border-radius:10px;margin:16px 0 0}
.sf-preview-results{font-size:14px;margin:16px 0 0;font-weight:650}
.sf-preview-success{color:#236b46}.sf-preview-problem{color:#9b2c2c}
@media(max-width:600px){.sf-progress{gap:4px}.sf-progress-item{font-size:10px;padding:8px 2px}.sf-step-actions{display:grid;grid-template-columns:1fr}.sf-step-actions button{width:100%}.sf-terms summary{padding:14px}.sf-expand{font-size:10px}.sf-terms-body{max-height:400px}}
/* v0.4 fictional test only */
.sf-send-test { background: #275d4b; color: #fff; padding: 0.8rem 1.2rem; border: 0; border-radius: 9px; cursor: pointer; font: inherit; }
.sf-send-test:hover:not(:disabled) { background: #1a4436; }
.sf-send-test:disabled { opacity: 0.65; cursor: not-allowed; }

/* v0.4.1: visible validation summary on the active step */
.sf-step-notice{margin:0 0 18px;padding:12px 15px;border-left:4px solid #b34141;border-radius:8px;background:#fff2f1;color:#852525;font-size:14px;font-weight:650;line-height:1.5}.sf-step-notice[hidden]{display:none!important}
/* Staged public signing styles */
.sf-live-consents {padding:14px 16px;background:#f6f8f6;border:1px solid #d2dcd5;border-radius:9px;margin:20px 0 10px;}
.sf-live-consents .sf-choice {display:flex;align-items:flex-start;gap:9px;margin:11px 0;line-height:1.5;}
.sf-live-consents input[type=checkbox] {margin-top:5px;flex:none;}
.sf-honeypot {position:absolute!important;left:-9999px!important;top:auto;width:1px;height:1px;overflow:hidden;}
.sf-copy-instructions {font-size:.9em;color:#4a6055;line-height:1.6;}
.sf-download-copy,.sf-next-client{margin-top:14px;padding:11px 18px;border:1px solid #3b6854;background:white;border-radius:8px;color:#315540;cursor:pointer;}
.sf-download-copy:disabled{opacity:.6;cursor:wait;}
.sf-download-note{margin:9px 0;color:#4b6256;}

.sf-turnstile-host{min-height:65px;margin:20px 0 8px}.sf-turnstile-status{font-size:13px;color:#496f66;margin:0 0 12px}.sf-turnstile-error{color:#a03b35;font-weight:600}

/* NR Aesthetics branded treatment (the existing form behavior is unchanged). */
.sf-root{--sf-ink:#332D3B;--sf-muted:#645E69;--sf-accent:#624A70;--sf-border:#D9CDE4;--sf-bg:#F8F5FA}
.sf-root .sf-card-icon,.sf-root .sf-live-consents{background:#D9CDE4}
.sf-root .sf-progress-item.sf-finished{border-color:#D9CDE4}
.sf-root .sf-signature-wrap{border-color:#B7A3CA}
.sf-root .sf-download-copy,.sf-root .sf-next-client{border-color:#624A70;color:#624A70}
.sf-root .sf-copy-instructions,.sf-root .sf-turnstile-status,.sf-root .sf-download-note{color:#645E69}
