/* typeform - fullscreen frontend */
.mlqp-overlay{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  background:#ffffff!important;
  z-index:999999!important;
  display:none!important;
  align-items:stretch!important;
  justify-content:stretch!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
}
.mlqp-overlay.is-open{display:flex!important}
.mlqp-modal{
  width:100vw!important;
  height:100vh!important;
  max-width:none!important;
  max-height:none!important;
  min-height:100vh!important;
  overflow:hidden!important;
  background:var(--mlqp-bg,#fff)!important;
  color:var(--mlqp-text,#111827)!important;
  border-radius:0!important;
  box-shadow:none!important;
  position:relative!important;
  padding:0!important;
  margin:0!important;
}
.mlqp-content{
  width:100%!important;
  height:100%!important;
  min-height:100vh!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:76px 24px 56px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.mlqp-screen{
  width:min(760px,92vw)!important;
  max-height:calc(100vh - 132px)!important;
  overflow:auto!important;
  padding:8px 4px 24px!important;
  box-sizing:border-box!important;
  animation:mlqpSlideUp .46s cubic-bezier(.22,1,.36,1) both!important;
  will-change:transform,opacity!important;
  scrollbar-width:none!important;
}
.mlqp-screen::-webkit-scrollbar{display:none!important}
.mlqp-screen.mlqp-screen-back{animation:mlqpSlideDown .36s cubic-bezier(.22,1,.36,1) both!important}
@keyframes mlqpSlideUp{
  from{opacity:0;transform:translate3d(0,64px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}
@keyframes mlqpSlideDown{
  from{opacity:0;transform:translate3d(0,-34px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}
.mlqp-close{
  all:unset!important;
  box-sizing:border-box!important;
  position:fixed!important;
  right:24px!important;
  top:22px!important;
  width:42px!important;
  height:42px!important;
  border-radius:999px!important;
  background:#f3f4f6!important;
  cursor:pointer!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  z-index:1000001!important;
  transition:.2s ease!important;
}
.mlqp-close:hover{background:#e5e7eb!important;transform:rotate(90deg)!important}
.mlqp-close span{position:absolute!important;width:18px!important;height:2px!important;background:#111827!important;border-radius:2px!important}
.mlqp-close span:first-child{transform:rotate(45deg)!important}
.mlqp-close span:last-child{transform:rotate(-45deg)!important}
.mlqp-close-outside .mlqp-close{top:22px!important;right:24px!important;background:#f3f4f6!important}
.mlqp-progress-wrap{
  position:fixed!important;
  top:0!important;
  left:0!important;
  width:100%!important;
  height:5px!important;
  background:#eef2f7!important;
  border-radius:0!important;
  overflow:hidden!important;
  margin:0!important;
  z-index:1000000!important;
}
.mlqp-progress-bar{width:0;height:100%;background:var(--mlqp-progress,var(--mlqp-primary,#0b66c3));transition:width .32s ease}
.mlqp-logo{margin-bottom:30px!important}
.mlqp-logo.top_center{text-align:center}.mlqp-logo.top_left{text-align:left}.mlqp-logo.top_right{text-align:right}
.mlqp-logo img{max-width:100%;height:auto;display:inline-block}
.mlqp-title{
  font-size:clamp(34px,6vw,64px)!important;
  line-height:1.04!important;
  margin:0 0 20px!important;
  font-weight:800!important;
  letter-spacing:-.045em!important;
  color:var(--mlqp-text,#111827)!important;
}
.mlqp-text{
  font-size:clamp(18px,2.1vw,24px)!important;
  line-height:1.55!important;
  color:#4b5563!important;
  margin:0 0 34px!important;
  max-width:680px!important;
}
.mlqp-question{
  font-size:clamp(32px,5vw,56px)!important;
  line-height:1.08!important;
  margin:0 0 34px!important;
  font-weight:800!important;
  letter-spacing:-.04em!important;
  color:var(--mlqp-text,#111827)!important;
}
.mlqp-options{display:grid!important;gap:12px!important;width:100%!important}
.mlqp-option{
  width:100%!important;
  border:1.5px solid #d8dde6!important;
  background:#fff!important;
  border-radius:12px!important;
  padding:18px 20px!important;
  text-align:left!important;
  font-size:18px!important;
  line-height:1.35!important;
  cursor:pointer!important;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease!important;
  color:var(--mlqp-text,#111827)!important;
  box-shadow:0 1px 0 rgba(17,24,39,.03)!important;
}
.mlqp-option:hover{border-color:var(--mlqp-primary,#0b66c3)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--mlqp-primary,#0b66c3) 12%,transparent)!important;transform:translateY(-1px)!important}
.mlqp-option.is-selected{background:var(--mlqp-primary,#0b66c3)!important;border-color:var(--mlqp-primary,#0b66c3)!important;color:#fff!important;box-shadow:0 8px 22px color-mix(in srgb,var(--mlqp-primary,#0b66c3) 22%,transparent)!important;transform:translateY(-1px)!important}
.mlqp-actions{display:flex!important;gap:12px!important;flex-wrap:wrap!important;align-items:center!important;margin-top:30px!important}
.mlqp-btn{
  border:0!important;
  border-radius:8px!important;
  background:var(--mlqp-btn,var(--mlqp-primary,#0b66c3))!important;
  color:var(--mlqp-btn-text,#fff)!important;
  padding:15px 24px!important;
  min-height:52px!important;
  font-weight:700!important;
  font-size:17px!important;
  cursor:pointer!important;
  text-decoration:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  transition:.16s ease!important;
}
.mlqp-btn:hover{filter:brightness(.96)!important;color:var(--mlqp-btn-text,#fff)!important;transform:translateY(-1px)!important}
.mlqp-btn.secondary{background:#f3f4f6!important;color:#111827!important}
.mlqp-btn.secondary:hover{color:#111827!important;background:#e5e7eb!important}
.mlqp-fields{display:grid!important;grid-template-columns:1fr!important;gap:16px!important;width:100%!important}
.mlqp-field-full{grid-column:1/-1!important}.mlqp-field label{display:block;font-weight:700;margin-bottom:8px}
.mlqp-field input,.mlqp-field textarea,.mlqp-step-input{
  width:100%!important;
  border:0!important;
  border-bottom:2px solid #d1d5db!important;
  border-radius:0!important;
  padding:18px 4px!important;
  font-size:clamp(22px,3vw,34px)!important;
  line-height:1.25!important;
  background:transparent!important;
  color:#111827!important;
  -webkit-text-fill-color:#111827!important;
  caret-color:var(--mlqp-primary,#0b66c3)!important;
  box-shadow:none!important;
  outline:none!important;
}
.mlqp-field textarea,.mlqp-step-input:is(textarea){min-height:150px!important;resize:vertical!important}
.mlqp-field input::placeholder,.mlqp-field textarea::placeholder,.mlqp-step-input::placeholder{color:#9ca3af!important;-webkit-text-fill-color:#9ca3af!important;opacity:1!important}
.mlqp-field input:focus,.mlqp-field textarea:focus,.mlqp-step-input:focus{border-color:var(--mlqp-primary,#0b66c3)!important;box-shadow:none!important}
.mlqp-error{background:#fef2f2!important;color:#b91c1c!important;padding:12px 14px!important;border-radius:10px!important;margin-top:18px!important;display:none!important;font-size:15px!important}
.mlqp-success-buttons{display:flex!important;flex-wrap:wrap!important;gap:12px!important;margin-top:24px!important}
.mlqp-shortcode-button{border:0;border-radius:999px;background:var(--mlqp-btn,#1ea064);color:var(--mlqp-btn-text,#fff);padding:13px 22px;font-weight:700;cursor:pointer}
.mlqp-loader{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;border-radius:50%;animation:mlqpSpin .8s linear infinite;margin-left:8px}@keyframes mlqpSpin{to{transform:rotate(360deg)}}
@media(max-width:640px){
  .mlqp-content{padding:1px 20px 40px!important;align-items:center!important}
  .mlqp-screen{width:100%!important;max-height:calc(100vh - 112px)!important}
  .mlqp-title{font-size:clamp(30px,10vw,44px)!important}
  .mlqp-question{font-size:clamp(28px,9vw,42px)!important;margin-bottom:28px!important}
  .mlqp-text{font-size:18px!important}
  .mlqp-option{font-size:16px!important;padding:16px!important}
  .mlqp-btn{width:100%!important;min-height:50px!important}
  .mlqp-actions{gap:10px!important}
  .mlqp-close,.mlqp-close-outside .mlqp-close{right:16px!important;top:16px!important;width:38px!important;height:38px!important}
}
@media(prefers-reduced-motion:reduce){.mlqp-screen{animation:none!important}.mlqp-option,.mlqp-btn,.mlqp-close{transition:none!important}}


/* Direct section mode: form starts inside the page section, not on button click */
.mlqp-inline-form.mlqp-overlay{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  min-height:100vh!important;
  height:auto!important;
  display:flex!important;
  background:var(--mlqp-bg,#fff)!important;
  z-index:1!important;
  overflow:hidden!important;
}
.mlqp-inline-form .mlqp-modal{
  width:100%!important;
  min-height:100vh!important;
  height:auto!important;
}
.mlqp-inline-form .mlqp-content{
  min-height:100vh!important;
  height:auto!important;
}
.mlqp-inline-form .mlqp-close{display:none!important;}
.mlqp-inline-form .mlqp-progress-wrap{position:absolute!important;}
.mlqp-inline-form .mlqp-screen{max-height:none!important;}

/* Elementor editor safety: don't let the direct form hide the whole editor canvas */
body.elementor-editor-active .mlqp-inline-form.mlqp-overlay,
body.elementor-editor-preview .mlqp-inline-form.mlqp-overlay,
.elementor-editor-active .mlqp-inline-form.mlqp-overlay,
.elementor-editor-preview .mlqp-inline-form.mlqp-overlay{
  position:relative!important;
  width:100%!important;
  min-height:420px!important;
  height:420px!important;
  max-height:420px!important;
  overflow:hidden!important;
  z-index:1!important;
  background:#ffffff!important;
  border:2px dashed #d1d5db!important;
  border-radius:16px!important;
  box-sizing:border-box!important;
}
body.elementor-editor-active .mlqp-inline-form .mlqp-modal,
body.elementor-editor-preview .mlqp-inline-form .mlqp-modal,
.elementor-editor-active .mlqp-inline-form .mlqp-modal,
.elementor-editor-preview .mlqp-inline-form .mlqp-modal{
  min-height:420px!important;
  height:420px!important;
  max-height:420px!important;
}
body.elementor-editor-active .mlqp-inline-form .mlqp-content,
body.elementor-editor-preview .mlqp-inline-form .mlqp-content,
.elementor-editor-active .mlqp-inline-form .mlqp-content,
.elementor-editor-preview .mlqp-inline-form .mlqp-content{
  min-height:420px!important;
  height:420px!important;
  padding:40px 24px!important;
}
body.elementor-editor-active .mlqp-inline-form .mlqp-content:empty:before,
body.elementor-editor-preview .mlqp-inline-form .mlqp-content:empty:before,
.elementor-editor-active .mlqp-inline-form .mlqp-content:empty:before,
.elementor-editor-preview .mlqp-inline-form .mlqp-content:empty:before{
  content:'Typeform Section - Preview will show on the live page';
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
  color:#111827!important;
  font-size:20px!important;
  font-weight:700!important;
  text-align:center!important;
}
body.elementor-editor-active .mlqp-inline-form .mlqp-question,
body.elementor-editor-preview .mlqp-inline-form .mlqp-question,
.elementor-editor-active .mlqp-inline-form .mlqp-question,
.elementor-editor-preview .mlqp-inline-form .mlqp-question{
  font-size:34px!important;
}
body.elementor-editor-active .mlqp-progress-wrap,
body.elementor-editor-preview .mlqp-progress-wrap,
.elementor-editor-active .mlqp-progress-wrap,
.elementor-editor-preview .mlqp-progress-wrap{
  position:absolute!important;
}

/* Appointment date + time slots */
.mlqp-appointment{width:100%!important}
.mlqp-time-help{font-size:15px!important;color:#6b7280!important;margin:20px 0 10px!important;font-weight:600!important}
.mlqp-time-slots{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))!important;gap:10px!important;margin-top:10px!important}
.mlqp-time-slot{border:1.5px solid #d8dde6!important;background:#fff!important;color:#111827!important;border-radius:12px!important;padding:14px 12px!important;font-size:16px!important;font-weight:700!important;cursor:pointer!important;transition:.16s ease!important}
.mlqp-time-slot:hover{border-color:var(--mlqp-primary,#0b66c3)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--mlqp-primary,#0b66c3) 12%,transparent)!important;transform:translateY(-1px)!important}
.mlqp-time-slot.is-selected{background:var(--mlqp-primary,#0b66c3)!important;border-color:var(--mlqp-primary,#0b66c3)!important;color:#fff!important;box-shadow:0 8px 22px color-mix(in srgb,var(--mlqp-primary,#0b66c3) 22%,transparent)!important}
.mlqp-time-empty{padding:14px!important;background:#f9fafb!important;border:1px dashed #d1d5db!important;border-radius:12px!important;color:#6b7280!important;font-size:15px!important}
