/* WordPress theme compatibility layer.
 * The original booking-form.css is intentionally unchanged.
 * These scoped rules prevent active WordPress themes/page builders from
 * overriding the form's original visual design.
 */
.eifb-wrapper {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  background: var(--canvas) !important;
  color: var(--ink-900) !important;
  font-family: 'Inter', ui-sans-serif, system-ui, -apple-system, sans-serif !important;
  line-height: 1.5 !important;
  text-align: initial !important;
}
.eifb-wrapper *, .eifb-wrapper *::before, .eifb-wrapper *::after { box-sizing: border-box !important; }
.eifb-wrapper h1, .eifb-wrapper h2, .eifb-wrapper h3, .eifb-wrapper h4, .eifb-wrapper h5, .eifb-wrapper h6,
.eifb-wrapper p { margin-top: 0 !important; margin-bottom: 0 !important; }
.eifb-wrapper button, .eifb-wrapper input, .eifb-wrapper select { font-family: inherit !important; }
.eifb-wrapper button { cursor: pointer !important; }
.eifb-wrapper .site-header { width:100% !important; display:flex !important; justify-content:center !important; align-items:center !important; padding:2.5rem 1rem !important; text-align:initial !important; }
.eifb-wrapper .brand { display:flex !important; align-items:center !important; justify-content:flex-start !important; gap:.625rem !important; }
.eifb-wrapper .brand-text { font-size:1.25rem !important; font-weight:700 !important; line-height:1.5 !important; letter-spacing:-.025em !important; }
.eifb-wrapper .main { display:flex !important; justify-content:center !important; width:100% !important; padding:0 1rem 4rem !important; }
.eifb-wrapper .form-card { width:100% !important; max-width:820px !important; background:#fff !important; border-radius:16px !important; border:1px solid var(--ink-200) !important; box-shadow:var(--shadow-card-lg) !important; overflow:hidden !important; }
@media (min-width:640px){ .eifb-wrapper .form-card{border-radius:var(--radius-card)!important;} }
.eifb-wrapper .progress-track { height:6px !important; width:100% !important; background:var(--brand-50)!important; }
.eifb-wrapper .progress-bar { height:100% !important; background:var(--brand-500)!important; }
.eifb-wrapper .step { display:flex !important; flex-direction:column !important; }
.eifb-wrapper .step.hidden { display:none !important; }
.eifb-wrapper .step-body { padding:2.5rem 1.5rem 0 !important; }
@media (min-width:640px){ .eifb-wrapper .step-body{padding:2.5rem 2.5rem 0!important;} }
.eifb-wrapper .step-title { font-family:'Inter',ui-sans-serif,system-ui,-apple-system,sans-serif!important; font-size:1.5rem!important; font-weight:700!important; line-height:1.25!important; letter-spacing:normal!important; color:var(--ink-900)!important; text-align:left!important; }
@media (min-width:640px){ .eifb-wrapper .step-title{font-size:1.75rem!important;} }
.eifb-wrapper .step-desc { margin-top:.5rem!important; font-size:.9375rem!important; line-height:1.5!important; color:var(--ink-500)!important; text-align:left!important; }
.eifb-wrapper .radio-group { display:flex!important; flex-direction:column!important; gap:.75rem!important; margin-top:1.75rem!important; }
.eifb-wrapper .radio-card { width:100%!important; min-height:0!important; display:flex!important; flex-direction:row!important; align-items:center!important; justify-content:flex-start!important; gap:1rem!important; border-radius:var(--radius-radio)!important; border:1px solid var(--ink-200)!important; background:#fff!important; padding:1rem 1.25rem!important; margin:0!important; text-align:left!important; color:var(--ink-700)!important; font-size:inherit!important; font-weight:inherit!important; line-height:1.5!important; box-shadow:none!important; }
.eifb-wrapper .radio-card:hover { border-color:var(--brand-300)!important; background:rgba(246,243,255,.4)!important; }
.eifb-wrapper .radio-card.selected { border-color:var(--brand-500)!important; background:var(--brand-50)!important; box-shadow:var(--shadow-focus)!important; }
.eifb-wrapper .radio-label { display:block!important; flex:0 1 auto!important; margin:0!important; padding:0!important; font-size:.9375rem!important; font-weight:500!important; color:var(--ink-700)!important; text-align:left!important; line-height:1.5!important; }
@media (min-width:640px){ .eifb-wrapper .radio-label{font-size:1rem!important;} }
.eifb-wrapper .radio-card.selected .radio-label{color:var(--ink-900)!important;}
.eifb-wrapper .step-footer { margin-top:2rem!important; padding:1rem 1.5rem 2.5rem!important; border-top:1px solid var(--ink-100)!important; display:flex!important; align-items:center!important; justify-content:space-between!important; }
@media (min-width:640px){ .eifb-wrapper .step-footer{padding:1rem 2.5rem 2.5rem!important;} }
.eifb-wrapper .footer-right{display:flex!important;justify-content:flex-end!important;width:100%!important;}
.eifb-wrapper .btn { display:inline-flex!important; align-items:center!important; justify-content:center!important; gap:.5rem!important; font-family:inherit!important; font-size:.9375rem!important; font-weight:600!important; line-height:1.5!important; border-radius:var(--radius-btn)!important; border:none!important; margin:0!important; text-transform:none!important; letter-spacing:normal!important; }
.eifb-wrapper .btn-primary { background:var(--ink-900)!important; color:#fff!important; padding:.875rem 1.75rem!important; border:0!important; box-shadow:0 1px 2px rgba(0,0,0,.06)!important; }
.eifb-wrapper .btn-primary:hover:not(:disabled){background:var(--ink-800)!important;}
.eifb-wrapper .btn-primary:disabled{background:var(--ink-200)!important;color:var(--ink-400)!important;}
.eifb-wrapper .btn-secondary{background:#fff!important;color:var(--ink-700)!important;border:1px solid var(--ink-200)!important;padding:.875rem 1.25rem!important;}
.eifb-wrapper .form-grid{display:grid!important;grid-template-columns:1fr!important;gap:1rem!important;margin-top:1.75rem!important;}
@media (min-width:640px){.eifb-wrapper .form-grid{grid-template-columns:1fr 1fr!important;}}
.eifb-wrapper .field-input{width:100%!important;max-width:none!important;border-radius:var(--radius-field)!important;border:1px solid var(--ink-200)!important;background:#fff!important;padding:.75rem 1rem!important;font-size:.9375rem!important;color:var(--ink-900)!important;}
.eifb-wrapper .booking-card{width:100%!important;border-radius:var(--radius-radio)!important;border:1px solid var(--ink-100)!important;background:#fff!important;padding:1.25rem!important;box-shadow:var(--shadow-card)!important;margin-top:1.75rem!important;}
@media (min-width:640px){.eifb-wrapper .booking-card{padding:1.5rem!important;}}
.eifb-wrapper .privacy-note{margin:0!important;}
.eifb-wrapper .success-wrap{text-align:center!important;}
