@import url("fonts.css");
/* JZ Creates: scoped forms and booking; inherits the current site's type. */
.jzc-form,.jzc-booking,.jzc-form-preview {--jzc-bg:#0c0c0e;--jzc-surface:#16161a;--jzc-ink:#f6f3ef;--jzc-muted:#c0bbb2;--jzc-accent:#ff2438;--jzc-line:rgba(192,187,178,.25);font-family:var(--font-body,Inter,system-ui,sans-serif);font-size:15px;line-height:1.6}
.jzc-form :where(input,select,textarea,button),.jzc-booking :where(button,select){font:inherit}
.jzc-form :where(input,select,textarea){width:100%;min-width:0;box-sizing:border-box;background:rgba(192,187,178,.055);color:inherit;border:1px solid var(--jzc-line);border-radius:8px;padding:12px 14px;box-shadow:none;outline:none;line-height:1.45}
.jzc-form :where(input,select){height:48px}.jzc-form :where(textarea){resize:vertical;min-height:100px}
.jzc-form :where(input,select,textarea):focus{border-color:var(--jzc-accent);outline:2px solid var(--jzc-ink);outline-offset:3px}
.jzc-form :where(input,textarea)::placeholder{color:inherit;opacity:.55}
.jzc-form select option{background:var(--jzc-surface);color:var(--jzc-ink)}
.jzc-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.jzc-fields--signup{grid-template-columns:1fr;gap:16px}
.jzc-field{display:flex;flex-direction:column;gap:8px;margin:0;color:inherit;font-size:14px;font-weight:400}
.jzc-field>span{font-weight:500}.jzc-field--wide{grid-column:1/-1}
.jzc-form .jzc-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:14px;font-weight:400;line-height:1.5;margin:0}
.jzc-form .jzc-check input{width:17px;height:17px;flex:0 0 17px;padding:0;margin:3px 0 0;accent-color:var(--jzc-accent);border-radius:3px}
.jzc-form .jzc-check input:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.jzc-consent{font-size:12px;line-height:1.65;color:inherit;opacity:.85;margin:22px 0 0}
.jzc-consent a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.jzc-form .jzc-check.jzc-consent{margin:28px 0}
.jzc-form>p.jzc-consent{margin:28px 0}
.jzc-form .jzc-consent{font-size:12px}.jzc-services{border:0;padding:0;margin:0;min-width:0}.jzc-services legend{font-weight:500;margin-bottom:12px;font-size:14px}.jzc-services>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}
.jzc-trap{position:absolute!important;left:-10000px!important;height:1px!important;width:1px!important;overflow:hidden!important}
.jzc-primary{display:inline-flex;justify-content:center;align-items:center;gap:12px;border:1px solid transparent;border-radius:999px;padding:14px 26px;background:linear-gradient(92deg,#c80020,#ae00c2);color:#f6f3ef!important;font-family:var(--font-body,Inter,system-ui,sans-serif);font-size:14px;font-weight:650;line-height:1.4;text-decoration:none;cursor:pointer;box-sizing:border-box;transition:opacity .15s,transform .15s}
.jzc-form>.jzc-primary{width:100%}.jzc-primary:hover{opacity:.88}.jzc-primary:active{transform:translateY(1px)}.jzc-primary:disabled{opacity:.5;cursor:wait}
.jzc-primary:focus-visible,.jzc-secondary:focus-visible,.jzc-booking button:focus-visible,.jzc-booking select:focus-visible{outline:2px solid #f6f3ef;outline-offset:4px}
.jzc-secondary{display:inline-block;color:inherit!important;background:transparent;border:1px solid var(--jzc-line);border-radius:999px;padding:13px 22px;font-size:14px;text-decoration:none;cursor:pointer}
.jzc-feedback{margin:14px 0;min-height:0;line-height:1.65;font-size:14px;color:inherit}.jzc-feedback:empty{display:none}.jzc-feedback.is-error{border-left:2px solid var(--jzc-accent);padding:8px 0 8px 12px}
.jzc-form.is-success>.jzc-fields,.jzc-form.is-success>.jzc-consent,.jzc-form.is-success>.jzc-primary{display:none}.jzc-form.is-success>.jzc-feedback{font-size:17px;padding:22px 0}
.jzc-form-shell{min-height:0!important}.form-shell:has(.jzc-form){min-height:0!important}.lead__form:has(.jzc-form){min-height:0!important}.side-card:has(.jzc-form) iframe{display:none}
.jzc-standalone{margin:0;background:#0c0c0e;color:#f6f3ef;min-height:100vh}.jzc-standalone *{box-sizing:border-box}
.jzc-header{padding:24px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(192,187,178,.12)}
.jzc-wordmark{font:600 24px var(--font-logo,"Crimson Pro",Georgia,serif);color:#f6f3ef;text-decoration:none;white-space:nowrap}.jzc-wordmark em{letter-spacing:2px;color:#ff2438}.jzc-header nav{display:flex;gap:32px;font:14px var(--font-body,Inter,system-ui,sans-serif)}.jzc-header nav a{color:#c0bbb2;text-decoration:none}.jzc-header nav a:hover{color:#f6f3ef}
.jzc-preview-notice{margin:0;padding:10px 5%;background:#16161a;color:#c0bbb2;font:13px var(--font-body,Inter,system-ui,sans-serif);border-bottom:1px solid rgba(192,187,178,.15)}
.jzc-booking{max-width:1240px;margin:auto;padding:54px 5% 80px}.jzc-booking-intro{margin-bottom:38px}.jzc-eyebrow{color:var(--jzc-muted);font-size:11px;letter-spacing:2px;margin:0 0 20px}
.jzc-booking h1,.jzc-form-preview h1{font:500 clamp(36px,4.5vw,58px)/1.12 var(--font-display,"Playfair Display",Georgia,serif);margin:0 0 18px;letter-spacing:-1px}.jzc-booking h1 em,.jzc-form-preview h1 em,.jzc-preview-signups h2 em{font-style:italic;color:var(--jzc-accent);background:linear-gradient(92deg,#ff0000,#d600ed);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;padding-bottom:.08em}
.jzc-booking-intro>p:last-child{max-width:570px;color:var(--jzc-muted);font-size:16px;margin:0}
.jzc-booking-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:44px;align-items:start}.jzc-call-info{position:sticky;top:24px;padding:20px 0}
.jzc-call-info h2{font:500 28px/1.15 var(--font-display,"Playfair Display",Georgia,serif);margin:0 0 10px}.jzc-call-info>p{color:var(--jzc-muted);font-size:14px;margin:0 0 24px;max-width:240px}.jzc-call-info dl{margin:28px 0;padding:0;border-top:1px solid var(--jzc-line)}.jzc-call-info dl>div{padding:15px 0;border-bottom:1px solid var(--jzc-line)}.jzc-call-info dt{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--jzc-muted);margin:0 0 5px}.jzc-call-info dd{font-size:14px;margin:0}.jzc-call-info>a{font-size:13px;color:var(--jzc-ink);text-underline-offset:4px}
.jzc-booking-panel{background:var(--jzc-surface);border:1px solid rgba(192,187,178,.17);border-radius:20px;padding:30px}.jzc-progress{display:flex;gap:26px;border-bottom:1px solid var(--jzc-line);margin:0 0 26px;font-size:12px;color:var(--jzc-muted)}.jzc-progress span{padding:0 0 15px;position:relative}.jzc-progress [aria-current]{color:var(--jzc-ink)}.jzc-progress [aria-current]:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--jzc-accent)}
.jzc-booking-panel h2{font:500 29px/1.18 var(--font-display,"Playfair Display",Georgia,serif);margin:20px 0}.jzc-text-button{color:var(--jzc-muted);padding:0;border:0;background:transparent;font-size:12px;cursor:pointer}.jzc-zone{display:block;font-size:12px;color:var(--jzc-muted);margin:0 0 26px}.jzc-zone select{max-width:100%;font-size:12px;color:var(--jzc-ink);padding:8px;background:transparent;border:1px solid var(--jzc-line);border-radius:8px;margin-left:5px}.jzc-zone select option{background:var(--jzc-surface)}
.jzc-calendar-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:24px}.jzc-month-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.jzc-month-label{font-size:15px;margin:0!important;font-family:inherit!important;font-weight:500}.jzc-month-head button{border:1px solid var(--jzc-line);background:transparent;color:var(--jzc-ink);width:30px;height:30px;border-radius:50%;cursor:pointer;padding:0}.jzc-month-head button:disabled{opacity:.25;cursor:default}
.jzc-weekdays,.jzc-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}.jzc-weekdays{font-size:10px;color:var(--jzc-muted);margin-bottom:10px}.jzc-days button{aspect-ratio:1;border:1px solid transparent;background:transparent;color:var(--jzc-ink);border-radius:50%;font-size:12px;cursor:pointer;padding:0}.jzc-days button:not(:disabled):hover{border-color:var(--jzc-line)}.jzc-days button:disabled{opacity:.2;cursor:default}.jzc-days button[aria-pressed=true]{background:var(--jzc-accent);color:var(--jzc-bg);font-weight:700}
.jzc-times-panel{border-left:1px solid var(--jzc-line);padding-left:22px;min-height:230px}.jzc-date-label{font-size:12px;margin:5px 0 18px;color:var(--jzc-muted)}.jzc-times{display:grid;gap:10px}.jzc-times button{padding:11px;border:1px solid var(--jzc-line);border-radius:8px;background:transparent;color:var(--jzc-ink);font-size:13px;cursor:pointer}.jzc-times button[aria-pressed=true]{border-color:var(--jzc-accent);box-shadow:inset 0 0 0 1px var(--jzc-accent)}.jzc-times[aria-busy=true]{opacity:.45}.jzc-selection{border-top:1px solid var(--jzc-line);padding-top:22px;margin-top:24px}.jzc-selected-label{font-size:14px;color:var(--jzc-muted);margin:0 0 16px}.jzc-selection .jzc-primary{width:100%}
.jzc-booked{padding:20px 0}.jzc-booked p{color:var(--jzc-muted);max-width:430px}.jzc-success-mark{display:flex;width:50px;height:50px;align-items:center;justify-content:center;border:1px solid var(--jzc-accent);border-radius:50%;color:var(--jzc-accent);font-size:24px}.jzc-booked .jzc-primary{margin:14px 10px 12px 0}.jzc-manage-actions{display:flex;gap:12px;flex-wrap:wrap}.jzc-current-time{color:var(--jzc-muted);margin-bottom:24px}
.jzc-footer{padding:34px 5%;display:flex;gap:28px;align-items:center;border-top:1px solid rgba(192,187,178,.12);font:12px var(--font-body,Inter,system-ui,sans-serif);color:#c0bbb2}.jzc-footer>a:not(.jzc-wordmark){color:inherit}.jzc-footer>span{margin-left:auto}
.jzc-form-preview{max-width:1240px;margin:auto;padding:60px 5%;color:#f6f3ef}.jzc-form-preview>p{color:var(--jzc-muted);margin-bottom:32px}.jzc-preview-contact{max-width:720px;background:var(--jzc-surface);border:1px solid var(--jzc-line);padding:32px;border-radius:20px}.jzc-preview-signups{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:76px}.jzc-preview-signups h2{font:500 34px/1.15 var(--font-display,"Playfair Display",Georgia,serif);margin-bottom:18px}.jzc-preview-signups p{color:var(--jzc-muted);font-size:15px}.jzc-preview-signups .jzc-form{margin-top:28px}
.jzc-standalone [hidden],.jzc-booking [hidden]{display:none!important}
@media(max-width:900px){.jzc-booking-layout{grid-template-columns:1fr;gap:24px}.jzc-call-info{position:static;padding:0}.jzc-call-info dl{display:flex;gap:30px;margin:18px 0;border:0}.jzc-call-info dl>div{border:0;padding:0}.jzc-call-info>p:last-of-type,.jzc-call-info>a{display:none}.jzc-call-info h2{font-size:23px}.jzc-booking-intro{margin-bottom:30px}.jzc-booking{padding-top:36px}}
@media(max-width:600px){.jzc-header{padding:20px 5%}.jzc-header nav{gap:18px}.jzc-header nav a:nth-child(-n+2){display:none}.jzc-wordmark{font-size:21px}.jzc-booking-panel{padding:22px 18px;border-radius:20px}.jzc-fields{grid-template-columns:1fr;gap:17px}.jzc-services>div{grid-template-columns:1fr}.jzc-calendar-layout{grid-template-columns:1fr}.jzc-times-panel{border-left:0;padding:0;border-top:1px solid var(--jzc-line);padding-top:16px;min-height:0}.jzc-times{grid-template-columns:repeat(2,minmax(0,1fr))}.jzc-days{gap:7px}.jzc-days button{font-size:14px}.jzc-progress{gap:22px;font-size:11px}.jzc-zone select{display:block;margin:8px 0 0;width:100%}.jzc-call-info dl{gap:20px}.jzc-call-info dd{font-size:12px}.jzc-footer{flex-wrap:wrap;gap:18px}.jzc-footer>span{width:100%;margin:0}.jzc-preview-signups{grid-template-columns:1fr;gap:42px;margin-top:48px}.jzc-preview-contact{padding:22px 18px}.jzc-form-preview{padding-top:36px}.jzc-manage-actions>*{width:100%}.jzc-booked .jzc-primary,.jzc-booked .jzc-secondary{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.jzc-primary{transition:none}}
