/* Book a demo sheet: a centred dialog on desktop, a bottom sheet on phones */
.tkd{--d-ink:#06120c;--d-ink2:#2a4a3c;--d-line:#d5ebdf;--d-tint:#eef9f3;--d-ac:#0d7f4b;--d-pill:#36f59a;--d-pillfg:#080b0a;--d-disp:"Geist","IBM Plex Sans",system-ui,sans-serif;--d-body:"IBM Plex Sans",system-ui,sans-serif;--d-dw:600;--d-dt:-.03em;
 box-sizing:border-box;width:min(600px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;padding:0;border:0;border-radius:24px;background:#ffffff;color:var(--d-ink);
 box-shadow:0 0 0 1px var(--d-line),0 30px 80px rgba(0,0,0,.28);overflow:auto;overscroll-behavior:contain;font-family:var(--d-body);text-align:left}
.tkd *,.tkd *::before,.tkd *::after{box-sizing:border-box}
.tkd::backdrop{background:color-mix(in srgb,var(--d-ink) 55%,transparent)}
.tkd[open]{animation:tkd-in .28s cubic-bezier(.2,.7,.2,1)}
@keyframes tkd-in{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
html.tkd-lock{overflow:hidden}
.tkd-f{position:relative;margin:0}
.tkd-b{padding:clamp(24px,3vw,36px);display:grid;gap:18px}
.tkd h2{font-family:var(--d-disp);font-weight:var(--d-dw);letter-spacing:var(--d-dt);font-size:clamp(24px,2.4vw,32px);line-height:1.1;margin:0;padding-right:44px;color:var(--d-ink);text-transform:none}
.tkd .tkd-p{margin:-6px 0 0;font-size:16px;line-height:1.5;color:var(--d-ink2);max-width:46ch}
.tkd-x{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:999px;border:0;background:var(--d-tint);color:var(--d-ink);display:grid;place-items:center;cursor:pointer;padding:0}
.tkd-x svg{width:18px;height:18px}
.tkd-x:hover{filter:brightness(.96)}
.tkd-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}
.tkd-fld{display:grid;gap:8px;min-width:0}
.tkd-fld label{font:600 15px/1.3 var(--d-body);color:var(--d-ink)}
.tkd-fld label span{font-weight:500;color:var(--d-ink2);margin-left:4px}
.tkd-fld input,.tkd-fld textarea{width:100%;min-width:0;margin:0;border:0;border-radius:14px;background:#ffffff;color:var(--d-ink);font:500 16px/1.4 var(--d-body);padding:0 16px;height:52px;
 box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--d-ink) 22%,transparent);transition:box-shadow .15s;-webkit-appearance:none;appearance:none}
.tkd-fld textarea{height:auto;min-height:108px;padding:14px 16px;resize:vertical}
.tkd-fld input:hover,.tkd-fld textarea:hover{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--d-ink) 40%,transparent)}
.tkd-fld input:focus,.tkd-fld textarea:focus{outline:0;box-shadow:inset 0 0 0 2px var(--d-ac)}
.tkd-fld [aria-invalid="true"],.tkd-fld [aria-invalid="true"]:focus{box-shadow:inset 0 0 0 2px #c8372d}
.tkd .tkd-err{margin:0;font-size:14px;line-height:1.4;color:#b3261e}
.tkd .tkd-err:empty,.tkd .tkd-s:empty{display:none}
.tkd-a{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.tkd-pill{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 28px;border:0;border-radius:999px;background:var(--d-pill);color:var(--d-pillfg);font:700 13.5px/1 var(--d-body);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:transform .2s,filter .2s}
.tkd-pill:hover{transform:translateY(-1px);filter:brightness(1.08)}
.tkd-pill[aria-disabled="true"]{opacity:.6;pointer-events:none}
.tkd-pill:focus-visible,.tkd-x:focus-visible{outline:2px solid var(--d-ac);outline-offset:3px}
.tkd .tkd-s{margin:0;font-size:15px;line-height:1.4;color:#b3261e}
.tkd .tkd-s a,.tkd .tkd-err a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.tkd-ok{display:grid;gap:14px;justify-items:start;outline:0;padding:8px 0 4px}
.tkd-ok p{margin:0;font-size:17px;line-height:1.5;color:var(--d-ink2);max-width:40ch}
.tkd-tick{width:52px;height:52px;border-radius:999px;display:grid;place-items:center;background:var(--d-tint);color:var(--d-ac)}
.tkd-tick svg{width:26px;height:26px}
@media (max-width:640px){
 .tkd{width:100%;max-height:92dvh;margin:auto 0 0;border-radius:24px 24px 0 0;box-shadow:0 -10px 40px rgba(0,0,0,.2)}
 .tkd[open]{animation:tkd-up .32s cubic-bezier(.2,.7,.2,1)}
 .tkd-b{padding:28px 16px calc(20px + env(safe-area-inset-bottom,0px))}
 .tkd-2{grid-template-columns:minmax(0,1fr)}
 .tkd-a .tkd-pill{flex:1 1 100%}
 .tkd-x{top:12px;right:12px}
}
@keyframes tkd-up{from{transform:translateY(100%)}to{transform:none}}
@media (prefers-reduced-motion:reduce){.tkd[open]{animation:none}.tkd-pill{transition:none}}
