.jf{--jf-ink: var(--text-dark, #3d405b);--jf-ink-soft: var(--text-mid, #5a5d7a);--jf-accent: var(--accent, #e07a5f);--jf-accent-dark: var(--accent-dark, #c66a51);--jf-cool: var(--accent-cool, #81b29a);--jf-line: rgba(61, 64, 91, .22);--jf-error: #b42318;background:#fff;color:var(--jf-ink);border-radius:24px;padding:clamp(1.5rem,4vw,3rem);box-shadow:0 20px 60px #3d405b26;text-align:left;font-size:1rem;line-height:1.6}.jf a{color:var(--jf-accent-dark);text-decoration:underline;text-underline-offset:2px}.jf a:hover{color:var(--jf-ink)}.jf-hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.jf-loading{color:var(--jf-ink-soft);text-align:center;padding:2rem 0}.jf-note{color:var(--jf-ink-soft);margin-bottom:1.5rem}.jf-section{border:none;border-top:1px solid var(--jf-line);padding:1.75rem 0 .5rem;margin:0;min-width:0}.jf-section:first-of-type{border-top:none;padding-top:0}.jf-section-legend{padding:0;float:left;width:100%;margin-bottom:1rem}.jf-section-legend+*{clear:both}.jf-section-title{font-family:Montserrat,sans-serif;font-size:clamp(1.25rem,3vw,1.5rem);font-weight:800;color:var(--primary, #3d405b);line-height:1.3}.jf-section-description,.jf-description{color:var(--jf-ink-soft);margin-bottom:1rem}.jf-subheading{font-family:Montserrat,sans-serif;font-size:1.1rem;font-weight:700;margin:.5rem 0 1rem}.jf-field{margin:0 0 1.5rem;border:none;padding:0;min-width:0;clear:both}.jf-field[hidden],.jf-section[hidden],.jf [hidden]{display:none}.jf-label{display:block;font-weight:600;margin-bottom:.35rem;padding:0;color:var(--jf-ink)}.jf-required{font-weight:400;font-size:.9em;color:var(--jf-ink-soft)}.jf-help{color:var(--jf-ink-soft);font-size:.95rem;margin:-.15rem 0 .5rem}.jf input[type=text],.jf input[type=email],.jf input[type=tel],.jf input[type=number],.jf input[type=date],.jf input[type=datetime-local],.jf textarea,.jf select{display:block;width:100%;font:inherit;font-size:1rem;color:var(--jf-ink);background:#fff;border:1.5px solid var(--jf-line);border-radius:12px;padding:.75rem 1rem;transition:border-color .2s ease,box-shadow .2s ease}.jf textarea{resize:vertical;min-height:7rem}.jf input:hover,.jf textarea:hover,.jf select:hover{border-color:#3d405b66}.jf input:focus-visible,.jf textarea:focus-visible,.jf select:focus-visible,.jf button:focus-visible,.jf a:focus-visible,.jf-success:focus-visible{outline:3px solid var(--jf-cool);outline-offset:2px;border-color:var(--jf-ink)}.jf-options{display:grid;gap:.4rem}.jf-option{display:flex;align-items:flex-start;gap:.65rem}.jf-option input[type=radio],.jf-option input[type=checkbox]{flex-shrink:0;width:1.2rem;height:1.2rem;margin-top:.2rem;accent-color:var(--jf-accent-dark);cursor:pointer}.jf-option label{cursor:pointer}.jf-consent-text{flex:1}.jf-range{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:1rem}.jf-sublabel{display:block;font-size:.9rem;margin-bottom:.25rem}.jf-error{color:var(--jf-error);font-size:.95rem;font-weight:500;margin-top:.35rem}.jf-invalid input[type=text],.jf-invalid input[type=email],.jf-invalid input[type=tel],.jf-invalid input[type=number],.jf-invalid input[type=date],.jf-invalid input[type=datetime-local],.jf-invalid textarea,.jf-invalid select,.jf [aria-invalid=true]:is(input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],input[type=datetime-local],textarea,select){border-color:var(--jf-error)}.jf-consent{background:var(--eggshell, #f4f1de);border-radius:16px;padding:1.25rem 1.25rem .25rem;margin:1.5rem 0}.jf-alert{border-radius:12px;padding:1rem 1.25rem;margin:1rem 0}.jf-alert p+p{margin-top:.5rem}.jf-alert-error{background:#fdf0ee;border:1px solid rgba(180,35,24,.3);color:var(--jf-error)}.jf-actions{margin-top:1.5rem}.jf-submit{display:inline-block;font:inherit;font-weight:600;font-size:1rem;letter-spacing:.02em;color:#fff;background:var(--jf-accent);border:none;border-radius:50px;padding:1rem 2.75rem;cursor:pointer;box-shadow:0 8px 24px #e07a5f40;transition:all .3s cubic-bezier(.4,0,.2,1)}.jf-submit:hover:not(:disabled){background:var(--jf-accent-dark);transform:translateY(-2px)}.jf-submit:disabled{opacity:.65;cursor:progress}.jf-success{text-align:center;padding:2rem 0}.jf-success-message{font-family:Montserrat,sans-serif;font-size:clamp(1.15rem,2.5vw,1.4rem);font-weight:700;color:var(--primary, #3d405b);max-width:34rem;margin:0 auto;line-height:1.5}@media(max-width:600px){.jf{border-radius:18px}.jf-submit{width:100%}}@media(prefers-reduced-motion:reduce){.jf-submit,.jf input,.jf textarea,.jf select{transition:none}}
