/* ===== Book A Demo popup — load as its own file after mv.css ===== */
body.bd-lock{overflow:hidden}
.bd-ov{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(15,30,51,.62);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.bd-ov.open{display:flex;animation:bdFade .2s ease}
.bd-box{position:relative;width:min(880px,100%);max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;background:#fff;border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.35);animation:bdUp .25s ease}
.bd-rb{position:sticky;top:0;z-index:2;border-radius:0;height:4px}
.bd-x{position:absolute;top:16px;right:16px;z-index:3;width:40px;height:40px;border-radius:50%;border:0;background:#EEECE5;color:var(--ink);font:400 24px/1 var(--body);cursor:pointer;display:grid;place-items:center;transition:background .15s}
.bd-x:hover{background:#E2DFD6}
.bd-form{padding:30px 34px 32px}
.bd-head{padding-right:44px;margin-bottom:22px}
.bd-head h3{font-size:clamp(26px,3vw,32px);margin:10px 0 6px}
.bd-head p{margin:0;font-size:15px;color:var(--muted)}
.bd-cols{display:grid;grid-template-columns:1.05fr .95fr;gap:32px;align-items:start}
.bd-col{min-width:0}
.bd-lbl{display:flex;align-items:center;gap:8px;font:700 13px/1.2 var(--body);color:var(--ink);margin:0 0 8px}
.bd-lbl i{font-style:normal;display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--navy);color:#fff;font-size:11px}
.bd-field{margin-bottom:16px}
.bd-field input,.bd-field select{width:100%;min-height:48px;border:1.5px solid #DAD6CC;border-radius:12px;padding:12px 14px;font:15px var(--body);color:var(--ink);background:#FDFCFA;outline:none;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;appearance:none}
.bd-field select{padding-right:40px;background-image:linear-gradient(45deg,transparent 50%,var(--navy) 50%),linear-gradient(135deg,var(--navy) 50%,transparent 50%);background-position:calc(100% - 20px) 21px,calc(100% - 14px) 21px;background-size:6px 6px,6px 6px;background-repeat:no-repeat;cursor:pointer}
.bd-field select:disabled{background-color:#F4F2EC;color:#9AA1AE;cursor:not-allowed}
.bd-field input:focus,.bd-field select:focus{border-color:var(--navy);background-color:#fff;box-shadow:0 0 0 3px rgba(31,58,95,.12)}
.bd-field.err input,.bd-field.err select,.bd-cal.err{border-color:var(--red)}
.bd-msg{display:none;margin-top:6px;font-size:12.5px;color:var(--red);font-weight:600}
.bd-field.err .bd-msg,.bd-calwrap.err .bd-msg{display:block}
.bd-phone{display:flex}
.bd-phone .cc{display:grid;place-items:center;padding:0 14px;border:1.5px solid #DAD6CC;border-right:0;border-radius:12px 0 0 12px;background:#F4F2EC;font:600 15px var(--body);color:var(--ink)}
.bd-phone input{border-radius:0 12px 12px 0}

/* calendar */
.bd-cal{border:1.5px solid #DAD6CC;border-radius:16px;padding:14px;background:#FDFCFA;margin-bottom:16px}
.bd-calwrap.err .bd-cal{border-color:var(--red)}
.bd-cal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.bd-cal-h b{font:700 17px var(--head);color:var(--ink)}
.bd-nav{width:36px;height:36px;border-radius:50%;border:0;background:#EEECE5;color:var(--ink);cursor:pointer;display:grid;place-items:center;font-size:18px;line-height:1;transition:background .15s}
.bd-nav:hover:not(:disabled){background:#E2DFD6}
.bd-nav:disabled{opacity:.35;cursor:not-allowed}
.bd-wd,.bd-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.bd-wd span{text-align:center;font:700 11px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:6px 0}
.bd-d{aspect-ratio:1;min-height:36px;border:0;border-radius:50%;background:transparent;font:600 14px var(--body);color:var(--ink);cursor:pointer;display:grid;place-items:center;position:relative;transition:background .15s,color .15s}
.bd-d:hover:not(:disabled):not(.sel){background:#EEF3FF}
.bd-d:disabled{color:#BEC3CC;cursor:not-allowed;font-weight:500}
.bd-d.today::after{content:"";position:absolute;bottom:5px;left:50%;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--mag)}
.bd-d.sel{background:var(--navy);color:#fff;box-shadow:0 6px 14px rgba(31,58,95,.3)}
.bd-d.sel.today::after{background:#fff}
.bd-pick{margin:-4px 0 16px;font-size:13.5px;color:var(--muted);min-height:20px}
.bd-pick b{color:var(--ink)}

.bd-sum{background:var(--soft);border-radius:14px;padding:12px 14px;font-size:13.5px;color:var(--text);margin:2px 0 4px}
.bd-sum b{color:var(--ink)}
.bd-course{margin-bottom:20px}
.bd-cols.single{grid-template-columns:1fr;max-width:460px;margin:0 auto}
.bd-hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.bd-submit{display:flex;align-items:center;justify-content:center;width:100%;margin-top:14px;min-height:52px;border:0;border-radius:999px;background:var(--navy);color:#fff;font:700 15px var(--body);cursor:pointer;transition:background .15s,opacity .15s}
.bd-submit:hover:not(:disabled){background:#17304f}
.bd-submit:disabled{opacity:.65;cursor:wait}
.bd-top-err{display:none;margin-top:12px;padding:10px 14px;border-radius:12px;background:#FDECEC;color:var(--red);font-size:13.5px;font-weight:600;text-align:center}
.bd-top-err.show{display:block}
.bd-note{font-size:12.5px;color:var(--muted);margin:12px 0 0;text-align:center}

/* success */
.bd-ok{display:none;padding:56px 34px 48px;text-align:center}
.bd-box.done .bd-form{display:none}
.bd-box.done .bd-ok{display:block}
.bd-ok .tick-lg{width:64px;height:64px;border-radius:50%;background:#E3F3E8;color:var(--grn);display:grid;place-items:center;margin:0 auto 18px;font:700 30px var(--head)}
.bd-ok h3{font-size:28px;margin-bottom:10px}
.bd-ok p{max-width:440px;margin:0 auto 22px;color:var(--muted)}
.bd-ok p b{color:var(--ink)}
.bd-ok .acts{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}

@keyframes bdFade{from{opacity:0}to{opacity:1}}
@keyframes bdUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

@media(max-width:820px){
  .bd-cols{grid-template-columns:1fr;gap:6px}
  .bd-form{padding:26px 22px 28px}
}
/* phones: bottom sheet */
@media(max-width:620px){
  .bd-ov{padding:0;align-items:flex-end}
  .bd-box{width:100%;max-height:94vh;max-height:94dvh;border-radius:22px 22px 0 0;animation:bdSheet .28s ease}
  .bd-form{padding:22px 18px calc(24px + env(safe-area-inset-bottom))}
  .bd-head h3{font-size:25px}
  .bd-x{top:12px;right:12px}
  .bd-cal{padding:10px}
  .bd-field input,.bd-field select{font-size:16px} /* stops iOS zoom on focus */
  .bd-ok{padding:44px 20px calc(36px + env(safe-area-inset-bottom))}
}
@keyframes bdSheet{from{transform:translateY(100%)}to{transform:none}}
@media(prefers-reduced-motion:reduce){.bd-ov.open,.bd-box{animation:none}}
