.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
html.lead-form-open{overflow:hidden}
.lead-dialog{width:min(760px,calc(100% - 40px));max-height:calc(100dvh - 40px);padding:0;border:3px solid var(--ink);border-radius:5px;background:#fff;color:var(--ink);box-shadow:10px 10px 0 var(--ink);overflow:hidden}
.lead-dialog[open]{display:flex;flex-direction:column}
.lead-dialog::backdrop{background:rgba(8,8,8,.8);backdrop-filter:blur(5px)}
.lead-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:none;padding:22px 30px 16px;background:var(--accent)}
.lead-dialog-header .eyebrow{font-size:10px;margin:0 0 7px;letter-spacing:.05em}
.lead-progress-label{font-size:12px;font-weight:700;margin:0}
.lead-close{width:40px;height:40px;flex:none;display:grid;place-items:center;border:2px solid var(--ink);border-radius:3px;background:#fff;font-size:22px;cursor:pointer;color:var(--ink)}
.lead-progress{height:5px;background:#e6e3db;flex:none}
.lead-progress>span{display:block;height:100%;width:20%;background:var(--pink);transition:width .25s ease}
.lead-dialog form{display:flex;flex-direction:column;min-height:0;overflow:auto;overscroll-behavior:contain}
.lead-panels{padding:30px 38px 16px}
.lead-panel[hidden],.lead-dialog [hidden]{display:none!important}
.lead-kicker{font-size:11px;font-weight:800;letter-spacing:.05em;margin:0 0 14px}
.lead-panel h2{font-size:clamp(42px,5vw,64px);line-height:.9;margin:0 0 20px;letter-spacing:-.015em;outline:none}
.lead-intro{font-size:15px;line-height:1.5;color:#414141;max-width:580px;margin:0 0 24px}
.lead-options{margin:0;padding:0;border:0;display:grid;gap:12px}
.lead-option{display:flex;align-items:center;gap:14px;padding:17px 18px;border:2px solid var(--ink);border-radius:3px;cursor:pointer;background:#fff;transition:background .15s,box-shadow .15s}
.lead-option:has(input:checked){background:var(--accent);box-shadow:4px 4px 0 var(--ink)}
.lead-option input{width:19px;height:19px;accent-color:var(--ink);flex:none;margin:0}
.lead-option span{flex:1}.lead-option strong{display:block;font-size:16px;line-height:1.3}.lead-option small{display:block;margin-top:4px;font-size:12px;line-height:1.4;color:#434343}.lead-option b{font-size:24px;font-weight:500}
.lead-field{display:block;font-size:14px;font-weight:700;margin-bottom:18px;line-height:1.4}
.lead-field>small{font-size:11px;font-weight:400;color:#666;margin-left:6px}
.lead-field input,.lead-field textarea{display:block;width:100%;margin-top:7px;border:2px solid #aaa79f;border-radius:3px;background:#fbfaf6;color:var(--ink);padding:12px 14px;font-family:var(--font-body);font-size:16px;font-weight:400;line-height:1.5;transition:border-color .15s}
.lead-field textarea{resize:vertical;min-height:90px}.lead-field input:focus,.lead-field textarea:focus{border-color:var(--ink);outline:3px solid var(--accent);outline-offset:1px}.lead-field input::placeholder,.lead-field textarea::placeholder{color:#76736e;opacity:1}
.lead-dialog button:focus-visible,.lead-option:focus-within{outline:3px solid var(--pink);outline-offset:3px}
.lead-privacy{font-size:12px;line-height:1.5;color:#555;margin:2px 0 8px}.lead-privacy a{text-decoration:underline;text-underline-offset:2px}
.lead-actions{position:sticky;bottom:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 38px 24px;background:#fff;border-top:1px solid #e4e1da;margin-top:auto}
.lead-actions .button{margin-left:auto;cursor:pointer;min-width:180px;font-family:var(--font-body)}
.lead-back{border:0;background:none;color:var(--ink);padding:12px 0;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}
.lead-actions button:disabled{opacity:.65;cursor:wait}.lead-error{border-left:4px solid #b90036;background:#fff0f4;color:#92102f;padding:12px 15px;font-size:14px;line-height:1.5;margin:20px 0 4px}
.lead-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.lead-calendar{border:2px solid var(--ink);padding:18px;max-width:460px;margin-inline:auto;background:var(--paper)}
.lead-calendar-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.lead-calendar-header strong{font-size:16px;text-transform:capitalize}.lead-calendar-header button{border:1px solid var(--ink);border-radius:3px;background:#fff;width:34px;height:34px;font-size:20px;cursor:pointer;color:var(--ink)}.lead-calendar-header button:disabled{opacity:.25;cursor:default}
.lead-weekdays,.lead-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.lead-weekdays{text-align:center;font-size:11px;font-weight:700;margin-bottom:8px}.lead-calendar-days button{position:relative;font-family:var(--font-body);font-size:14px;height:42px;min-width:0;padding:0;border:1px solid var(--ink);border-radius:3px;background:#fff;color:var(--ink);font-weight:700;cursor:pointer}.lead-calendar-days button:disabled{opacity:.3;border-color:transparent;background:transparent;cursor:default}.lead-calendar-days button.is-booked:disabled{opacity:.8;color:var(--ink);font-size:20px;font-weight:500}.lead-calendar-days button[aria-pressed=true]{background:var(--accent);border:1px solid var(--ink);box-shadow:none}.lead-calendar-days button[aria-pressed=true]::after{content:'✓';position:absolute;top:2px;right:2px;display:grid;place-items:center;width:13px;height:13px;border:1px solid var(--ink);border-radius:2px;background:#fff;color:var(--ink);font-size:9px;line-height:1}
.lead-calendar-note{font-size:12px;line-height:1.5;margin:14px 0 0;color:#444}
.lead-submit-group{display:grid;justify-items:end;gap:5px;margin-left:auto}.lead-submit-group[hidden]{display:none}.lead-submit-group .button{margin-left:0;max-width:100%}.lead-submit-group small{font-size:11px;line-height:1.35;color:#555;text-align:right}
.lead-submit-group .lead-pay-button{min-height:44px;padding:10px 16px;background:#fff;color:#080808;box-shadow:3px 3px 0 #080808;font-size:12px}.lead-submit-group .lead-pay-button:hover{background:#fff000;color:#080808;transform:translateY(-2px)}.lead-submit-group .lead-pay-hint{max-width:290px}
.lead-summary{display:grid;gap:5px;margin-top:20px;padding-top:16px;border-top:1px solid #dedbd3;font-size:13px;line-height:1.5}.lead-summary>span{overflow-wrap:anywhere}.lead-summary>small{font-size:11px;color:#555}
.thank-you-hero{background:var(--accent);padding:clamp(60px,10vw,130px) 0;min-height:calc(100svh - 88px)}.thank-you-content{max-width:900px}.thank-you-hero h1{font-size:clamp(64px,10vw,142px);line-height:.84;margin:0 0 30px}.thank-you-hero h1 span{color:#fff;-webkit-text-stroke:2px var(--ink)}.thank-you-hero .thank-you-lead{max-width:600px;font-size:20px;line-height:1.5;margin-bottom:30px}.thank-you-next{max-width:620px;border-top:2px solid var(--ink);padding:20px 0;margin-bottom:20px}.thank-you-next p{margin:0 0 12px;font-size:16px}.thank-you-next p:last-child{margin-bottom:0}.thank-you-hero .button{margin-top:8px}
@media(max-width:520px){.lead-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 24px);box-shadow:5px 5px 0 var(--ink)}.lead-dialog-header{padding:16px 18px 12px}.lead-dialog-header .eyebrow{font-size:8px}.lead-panels{padding:24px 20px 12px}.lead-panel h2{font-size:43px}.lead-intro{font-size:14px;margin-bottom:20px}.lead-option{padding:14px 12px;gap:10px}.lead-option strong{font-size:14px}.lead-option small{font-size:11px}.lead-actions{padding:16px 20px 20px;gap:10px}.lead-actions .button{min-width:0;min-height:54px;padding:15px 16px;font-size:12px;gap:12px}.lead-back{font-size:12px}.lead-submit-group{max-width:78%}.lead-submit-group small{font-size:10px}.lead-submit-group .lead-pay-button{min-height:44px;padding:10px 12px;font-size:11px}.lead-calendar{padding:12px}.lead-calendar-days button{height:35px}.lead-weekdays,.lead-calendar-days{gap:4px}.thank-you-hero .thank-you-lead{font-size:17px}.thank-you-hero h1 span{-webkit-text-stroke:1px var(--ink)}}
@media(prefers-reduced-motion:reduce){.lead-progress>span,.lead-option{transition:none}}
