.demo-modal{background:var(--surface);width:min(960px,100% - 48px);max-width:none;max-height:calc(100dvh - 48px);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overscroll-behavior:contain;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:48px;padding:48px;display:grid;overflow-y:auto}.demo-modal-close{border-radius:var(--radius-md);background:var(--surface);width:44px;height:44px;color:var(--ink);cursor:pointer;place-items:center;display:grid;position:absolute;top:12px;right:12px}.demo-modal-close:hover{background:var(--surface-muted)}.demo-modal :focus-visible{outline:2px solid var(--ink);outline-offset:4px}.demo-modal-title{letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:32px;font-weight:600;line-height:1.12}.demo-modal-title:focus{outline:none}.demo-modal-eyebrow{margin:0 0 16px;font-size:13px;font-weight:600}.demo-modal-description{color:var(--ink);margin:20px 0 0;font-size:16px;line-height:1.5}.demo-modal-copy ul{margin:24px 0 0;padding:0;list-style:none}.demo-modal-copy li{gap:12px;font-size:15px;line-height:1.5;display:flex}.demo-modal-copy li+li{margin-top:10px}.demo-modal-copy li svg{flex-shrink:0;margin-top:3px}.demo-modal-promise{border-top:1px solid var(--line);margin:24px 0 0;padding-top:24px;font-size:15px;line-height:1.6}.demo-modal-form{flex-direction:column;gap:16px;padding-top:16px;display:flex}.demo-modal-next{color:var(--ink);margin:0;font-size:14px;line-height:1.5}.demo-modal-form label{flex-direction:column;gap:6px;font-size:14px;font-weight:500;line-height:1.4;display:flex}.demo-modal-form input,.demo-modal-form select{border:1px solid var(--muted);border-radius:var(--radius-md);background:var(--surface);width:100%;min-width:0;height:44px;color:var(--ink);font:inherit;padding:8px 12px;font-size:16px}.demo-modal-names{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.demo-modal-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.demo-modal-submit{border-radius:var(--radius-md);background:var(--sf-action-blue,#175cff);color:#fff;cursor:pointer;justify-content:center;align-items:center;min-height:48px;padding:12px 20px;font-size:20px;font-weight:700;display:flex}.demo-modal-submit:hover{filter:brightness(.95)}.demo-modal-submit:disabled{opacity:.7;cursor:wait}.demo-modal-legal{color:var(--ink);margin:0;font-size:12px;line-height:1.5}.demo-modal a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.demo-modal-note,.demo-modal-error{margin:0;font-size:14px;line-height:1.5}.demo-modal-error{border-left:3px solid var(--red);padding-left:12px}.demo-modal-calendar,.demo-modal-receipt,.demo-modal-generator{min-width:0}.demo-modal-calendar{height:100%;min-height:0}.demo-modal-calendar .booking-block-iframe{border:0;flex:1 1 0;width:100%;height:100%!important;min-height:0!important}.demo-modal-calendar .booking-block-scheduler-fallback{background:var(--surface-muted);flex:none;padding:12px;font-size:14px;line-height:1.5}.booking-block-pending{background:var(--surface-muted);color:var(--muted);text-align:center;place-items:center;padding:16px;font-size:14px;line-height:1.5;display:grid}.demo-modal-receipt{flex-direction:column;gap:16px;padding-top:16px;display:flex}.demo-modal-receipt p{margin:0;font-size:16px;line-height:1.5}.demo-modal-receipt a,.demo-modal-legal a{text-underline-offset:3px;text-decoration:underline}.demo-modal-free{text-align:center;font-size:14px}.demo-modal-step-calendar{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);gap:24px;height:min(900px,100dvh - 48px);overflow:hidden}.demo-modal-calendar .booking-block{max-width:680px;height:100%;margin-inline:auto;display:block}.demo-modal-calendar .booking-block-scheduler{height:100%;min-height:0;box-shadow:none;border:0;flex-direction:column;padding:0;display:flex}.demo-modal-step-booked{--demo-confirmation-accent:#f55a2a;grid-template-columns:minmax(0,1fr);gap:24px;height:auto;overflow-y:auto}.demo-modal-step-booked .demo-modal-title{color:var(--demo-confirmation-accent)}.demo-modal-generator{padding:8px}.demo-modal .demo-modal-generator .button-primary:not(.is-disabled){color:var(--surface);text-decoration:none}@media (max-width:760px){.demo-modal{--tw-translate-x:0px;--tw-translate-y:0px;width:100%;max-width:none;height:100dvh;max-height:100dvh;padding:max(24px, env(safe-area-inset-top)) 24px max(24px, env(safe-area-inset-bottom));border:0;border-radius:0;grid-template-columns:minmax(0,1fr);align-content:start;gap:20px;animation:none;inset:0;transform:none}.demo-modal-title{text-wrap:initial;font-size:28px}.demo-modal-eyebrow{margin-bottom:12px;padding-right:40px}.demo-modal-description{margin-top:12px;font-size:15px}.demo-modal-copy ul{margin-top:16px}.demo-modal-copy li{gap:8px;font-size:14px}.demo-modal-copy li+li{margin-top:6px}.demo-modal-form{gap:12px;padding:0}.demo-modal-close{top:max(12px, env(safe-area-inset-top))}.demo-modal-promise{margin-top:16px;padding-top:16px}.demo-modal-step-booked{border:1px solid var(--line);border-radius:var(--radius-xl);align-content:start;width:calc(100% - 32px);height:auto;max-height:calc(100dvh - 48px);margin-inline:auto;inset:24px 0 auto}}@media (max-width:760px) and (max-height:700px){.demo-modal-calendar-first{padding-block:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-bottom));gap:12px}.demo-modal-calendar-first .demo-modal-eyebrow{margin-bottom:8px}.demo-modal-calendar-first .demo-modal-title{font-size:24px}.demo-modal-calendar-first .demo-modal-description{margin-top:8px;font-size:14px}}@media (prefers-reduced-motion:reduce){.demo-modal{transition:none;animation:none}}
