/* =============================================================================
   LPA Wizard v1.4.4 | Five Minute LPA | Brand #4676b9 / #204578
   Mobile-first. All scoped inside .lpa-wizard-wrap to beat theme specificity.
   ============================================================================= */

.lpa-wizard-wrap{
  --lpa-primary:#4676b9;--lpa-dark:#204578;--lpa-bg:#f4f7fc;
  --lpa-white:#fff;--lpa-border:#cdd8ea;--lpa-text:#1c2e4a;
  --lpa-muted:#6b7fa0;--lpa-green:#2ecc87;--lpa-green-dark:#27b578;
  --lpa-red:#e53935;--lpa-red-light:#fdecea;
  --lpa-r:8px;--lpa-rl:14px;--lpa-t:0.22s ease;
}

/* ── Full-width breakout ────────────────────────────────────────────────────── */
.lpa-wizard-wrap{
  font-family:'Segoe UI','Arial',sans-serif;font-size:16px;
  color:var(--lpa-text);background:var(--lpa-bg);min-height:100vh;
  position:relative;width:100vw!important;max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;
  padding-left:0!important;padding-right:0!important;box-sizing:border-box;
}
.lpa-wizard-wrap *,.lpa-wizard-wrap *::before,.lpa-wizard-wrap *::after{box-sizing:border-box;margin:0;padding:0}

/* ── Top bar ─────────────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-top-bar{background:var(--lpa-dark);color:#fff;display:flex;justify-content:space-between;align-items:center;padding:10px 24px;font-size:12px;letter-spacing:.09em;text-transform:uppercase}
.lpa-wizard-wrap .lpa-breadcrumb{opacity:.8;font-size:11px;letter-spacing:.12em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60vw}
.lpa-wizard-wrap .lpa-save-quit{background:transparent!important;border:1px solid rgba(255,255,255,.5)!important;color:#fff!important;padding:5px 14px;font-size:11px;letter-spacing:.08em;cursor:pointer;text-transform:uppercase;border-radius:4px;transition:all var(--lpa-t);font-family:inherit;white-space:nowrap;flex-shrink:0}
.lpa-wizard-wrap .lpa-save-quit:hover{background:rgba(255,255,255,.15)!important}

/* ── Progress bar ────────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-progress-wrap{height:4px;background:#dde6f2}
.lpa-wizard-wrap .lpa-progress-bar{height:4px;background:linear-gradient(90deg,var(--lpa-primary),var(--lpa-green));transition:width .5s cubic-bezier(.4,0,.2,1)}

/* ── Steps ───────────────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-steps-container{padding-bottom:100px}
.lpa-wizard-wrap .lpa-step{display:none}
.lpa-wizard-wrap .lpa-step.lpa-step-active{display:block;animation:lpaFadeIn .28s ease}
@keyframes lpaFadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.lpa-wizard-wrap .lpa-step-inner{max-width:960px;margin:0 auto;padding:44px 48px 40px}

/* ── Typography ──────────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-step-title{font-size:1.9em;font-weight:700;color:var(--lpa-dark);line-height:1.22;margin-bottom:10px;letter-spacing:-.01em}
.lpa-wizard-wrap .lpa-step-sub{font-size:.95em;color:var(--lpa-muted);margin-bottom:8px;line-height:1.55}
.lpa-wizard-wrap .lpa-divider{border:none;border-top:2px solid var(--lpa-primary);margin:18px 0 32px;opacity:.15}

/* ── Save banner ─────────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-save-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:#e8f0fb;border:1px solid #c2d4f0;border-radius:var(--lpa-r);padding:12px 18px;margin-bottom:24px;font-size:.875em;color:var(--lpa-dark);animation:lpaFadeIn .3s ease}
.lpa-wizard-wrap .lpa-save-banner-text{display:flex;align-items:center;gap:8px;flex:1;min-width:0}
.lpa-wizard-wrap .lpa-save-banner-link{background:none!important;border:none!important;color:var(--lpa-primary)!important;font-weight:600;cursor:pointer;text-decoration:underline;font-size:.95em;font-family:inherit;padding:0;white-space:nowrap;flex-shrink:0}

/* ── Info notice ─────────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-info-notice{background:#e8f0fb;border:1px solid #c2d4f0;border-left:4px solid #4676b9;border-radius:6px;padding:14px 18px;margin-bottom:24px;font-size:.9em;color:#1c2e4a}

/* ── Radio cards ─────────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-radio-group{display:flex;flex-direction:column;gap:12px;margin-top:8px}
.lpa-wizard-wrap .lpa-radio-card{display:block;cursor:pointer}
.lpa-wizard-wrap .lpa-radio-card input[type="radio"]{position:absolute;opacity:0;width:0;height:0}
.lpa-wizard-wrap .lpa-radio-card-inner{display:flex;align-items:flex-start;gap:14px;padding:16px 20px;border:2px solid var(--lpa-border)!important;border-radius:var(--lpa-r);background:var(--lpa-white)!important;transition:border-color var(--lpa-t),box-shadow var(--lpa-t)}
.lpa-wizard-wrap .lpa-radio-card:hover .lpa-radio-card-inner{border-color:var(--lpa-primary)!important}
.lpa-wizard-wrap .lpa-radio-card input:checked+.lpa-radio-card-inner{border-color:var(--lpa-dark)!important;box-shadow:0 2px 12px rgba(32,69,120,.12);background:#f0f5fd!important}
.lpa-wizard-wrap .lpa-radio-circle{flex-shrink:0;width:20px;height:20px;border-radius:50%;border:2px solid #b0bfd6;margin-top:2px;position:relative;background:#fff}
.lpa-wizard-wrap .lpa-radio-card input:checked+.lpa-radio-card-inner .lpa-radio-circle{border-color:var(--lpa-dark)}
.lpa-wizard-wrap .lpa-radio-card input:checked+.lpa-radio-card-inner .lpa-radio-circle::after{content:'';position:absolute;top:3px;left:3px;width:10px;height:10px;border-radius:50%;background:var(--lpa-dark)}
.lpa-wizard-wrap .lpa-radio-text{font-size:1em;color:var(--lpa-text);line-height:1.4;font-weight:600}
.lpa-wizard-wrap .lpa-radio-desc{font-size:.85em;color:var(--lpa-muted);margin-top:4px;line-height:1.5}

/* Doc type cards */
.lpa-wizard-wrap .lpa-radio-group-cards{flex-direction:row;flex-wrap:wrap;gap:16px}
.lpa-wizard-wrap .lpa-doc-card{flex:1;min-width:200px}
.lpa-wizard-wrap .lpa-doc-card .lpa-radio-card-inner{flex-direction:column;align-items:flex-start;height:100%}
.lpa-wizard-wrap .lpa-doc-card-content strong{display:block;font-size:1em;color:var(--lpa-dark);margin-bottom:6px}
.lpa-wizard-wrap .lpa-doc-card-content p{font-size:.85em;color:var(--lpa-muted);line-height:1.5;margin-bottom:12px}
.lpa-wizard-wrap .lpa-doc-price{font-size:1.25em;font-weight:700;color:var(--lpa-dark)}
.lpa-wizard-wrap .lpa-doc-saving{display:inline-block;background:var(--lpa-green);color:#fff;font-size:.58em;padding:2px 8px;border-radius:3px;margin-left:6px;vertical-align:middle;font-weight:700;text-transform:uppercase}

/* ── Forms ───────────────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-form-group{margin-bottom:20px}
.lpa-wizard-wrap .lpa-form-group label{display:block;font-size:.85em;font-weight:600;color:var(--lpa-dark);margin-bottom:6px}
.lpa-wizard-wrap .lpa-req{color:var(--lpa-red)}
.lpa-wizard-wrap .lpa-form-group input[type="text"],
.lpa-wizard-wrap .lpa-form-group input[type="email"],
.lpa-wizard-wrap .lpa-form-group input[type="tel"],
.lpa-wizard-wrap .lpa-form-group input[type="number"],
.lpa-wizard-wrap .lpa-form-group input[type="password"],
.lpa-wizard-wrap .lpa-form-group select,
.lpa-wizard-wrap .lpa-form-group textarea{
  width:100%;padding:12px 14px;border:1.5px solid var(--lpa-border)!important;
  border-radius:var(--lpa-r)!important;font-size:.95em;font-family:inherit;
  color:var(--lpa-text)!important;background:var(--lpa-white)!important;
  transition:border-color var(--lpa-t),box-shadow var(--lpa-t);
  appearance:none;-webkit-appearance:none;outline:none;
  /* Prevent zoom on iOS — min 16px */
  font-size:max(16px, .95em);
}
.lpa-wizard-wrap .lpa-form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23204578' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 14px center!important;padding-right:36px}
.lpa-wizard-wrap .lpa-form-group input:focus,.lpa-wizard-wrap .lpa-form-group select:focus,.lpa-wizard-wrap .lpa-form-group textarea:focus{border-color:var(--lpa-primary)!important;box-shadow:0 0 0 3px rgba(70,118,185,.15)!important}
.lpa-wizard-wrap .lpa-form-group input.lpa-input-error,.lpa-wizard-wrap .lpa-form-group select.lpa-input-error{border-color:var(--lpa-red)!important;box-shadow:0 0 0 3px rgba(229,57,53,.10)!important}
.lpa-wizard-wrap .lpa-form-row{display:flex;gap:16px}
.lpa-wizard-wrap .lpa-form-row-2>.lpa-form-group{flex:1}
.lpa-wizard-wrap .lpa-dob-row{display:flex;gap:8px;align-items:flex-start}
.lpa-wizard-wrap .lpa-dob-row input[type="number"]{width:72px;flex-shrink:0;padding:12px 10px;border:1.5px solid var(--lpa-border)!important;border-radius:var(--lpa-r)!important;font-size:max(16px,.95em)!important;font-family:inherit;color:var(--lpa-text);background:var(--lpa-white)!important;-moz-appearance:textfield;-webkit-appearance:none}
.lpa-wizard-wrap .lpa-dob-row input[type="number"]::-webkit-inner-spin-button,.lpa-wizard-wrap .lpa-dob-row input[type="number"]::-webkit-outer-spin-button{-webkit-appearance:none}
.lpa-wizard-wrap .lpa-dob-row select{flex:1;padding:12px 14px;border:1.5px solid var(--lpa-border)!important;border-radius:var(--lpa-r)!important;font-size:max(16px,.95em)!important;font-family:inherit;color:var(--lpa-text);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23204578' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 14px center!important;appearance:none;-webkit-appearance:none}
.lpa-wizard-wrap .lpa-dob-row input:focus,.lpa-wizard-wrap .lpa-dob-row select:focus{border-color:var(--lpa-primary)!important;box-shadow:0 0 0 3px rgba(70,118,185,.15)!important;outline:none}
.lpa-wizard-wrap .lpa-copy-address-toggle{margin-bottom:16px}
.lpa-wizard-wrap .lpa-checkbox-label{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:.9em;color:var(--lpa-text)}
.lpa-wizard-wrap .lpa-checkbox-label input[type="checkbox"]{width:18px;height:18px;accent-color:var(--lpa-primary);cursor:pointer;flex-shrink:0}

/* ── Eligibility checks ──────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-eligibility-checks{display:flex;flex-direction:column;gap:12px}
.lpa-wizard-wrap .lpa-check-item{display:flex;gap:14px;padding:16px 18px;border:2px solid var(--lpa-border);border-radius:var(--lpa-r);background:#fff;cursor:pointer;transition:border-color var(--lpa-t)}
.lpa-wizard-wrap .lpa-check-item:hover{border-color:var(--lpa-primary)}
.lpa-wizard-wrap .lpa-check-item:has(input:checked){border-color:var(--lpa-dark);background:#f0f5fd}
.lpa-wizard-wrap .lpa-check-item input[type="checkbox"]{width:20px;height:20px;flex-shrink:0;margin-top:2px;accent-color:var(--lpa-dark)}
.lpa-wizard-wrap .lpa-check-content strong{display:block;font-size:.92em;color:var(--lpa-dark);margin-bottom:4px;font-weight:600}
.lpa-wizard-wrap .lpa-check-content p{font-size:.82em;color:var(--lpa-muted);line-height:1.5;margin:0}

/* ── BUTTONS ─────────────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-btn,
.lpa-wizard-wrap button.lpa-btn,
.lpa-wizard-wrap a.lpa-btn{
  display:inline-flex!important;align-items:center!important;gap:8px;
  padding:13px 32px!important;font-size:1em!important;font-family:inherit!important;
  font-weight:700!important;letter-spacing:.02em;border-radius:50px!important;
  cursor:pointer!important;transition:all var(--lpa-t)!important;
  text-decoration:none!important;white-space:nowrap;line-height:1.2!important;
  -webkit-tap-highlight-color:transparent;touch-action:manipulation;
}
.lpa-wizard-wrap .lpa-btn:disabled{opacity:.5!important;cursor:not-allowed!important}
.lpa-wizard-wrap .lpa-btn.lpa-btn-primary,.lpa-wizard-wrap button.lpa-btn-primary{background:#4676b9!important;color:#fff!important;border:2px solid #4676b9!important}
.lpa-wizard-wrap .lpa-btn.lpa-btn-primary:hover:not(:disabled){background:#204578!important;border-color:#204578!important;color:#fff!important}
.lpa-wizard-wrap .lpa-btn.lpa-btn-secondary,.lpa-wizard-wrap button.lpa-btn-secondary{background:transparent!important;color:#4676b9!important;border:2px solid #4676b9!important}
.lpa-wizard-wrap .lpa-btn.lpa-btn-secondary:hover:not(:disabled){background:#4676b9!important;color:#fff!important}
.lpa-wizard-wrap .lpa-btn.lpa-btn-green,.lpa-wizard-wrap button.lpa-btn-green{background:#2ecc87!important;color:#fff!important;border:2px solid #2ecc87!important}
.lpa-wizard-wrap .lpa-btn.lpa-btn-ghost,.lpa-wizard-wrap button.lpa-btn-ghost{background:#edf1f7!important;color:#6b7fa0!important;border:2px solid #dde5f0!important}
.lpa-wizard-wrap .lpa-btn-full{width:100%!important;justify-content:center!important}

/* ── Nav bar ─────────────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-nav-buttons{
  position:fixed;bottom:0;left:0;right:0;background:#fff!important;
  border-top:1px solid var(--lpa-border);padding:14px 24px;
  display:flex;justify-content:space-between;align-items:center;
  z-index:9999;box-shadow:0 -2px 12px rgba(32,69,120,.08);
  /* Safe area for iPhone X+ home bar */
  padding-bottom:max(14px, env(safe-area-inset-bottom));
}

/* ── Saving indicator ────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-saving{position:fixed;bottom:80px;right:16px;background:var(--lpa-dark);color:#fff;padding:8px 16px;border-radius:var(--lpa-r);font-size:.82em;display:flex;align-items:center;gap:8px;z-index:10000}
.lpa-wizard-wrap .lpa-spinner{width:13px;height:13px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:lpaSpin .65s linear infinite;display:inline-block}
@keyframes lpaSpin{to{transform:rotate(360deg)}}

/* ── Errors ──────────────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-step-error,.lpa-wizard-wrap .lpa-error-msg{background:var(--lpa-red-light);border:1px solid #f5c6c5;border-left:4px solid var(--lpa-red);color:#8b1a1a;padding:12px 16px;border-radius:var(--lpa-r);font-size:.875em;margin-top:12px}

/* ── Attorney cards ──────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-attorneys-wrap{display:flex;flex-direction:column;gap:16px;margin-bottom:14px}
.lpa-wizard-wrap .lpa-attorney-card{background:#fff;border:1.5px solid var(--lpa-border);border-radius:var(--lpa-r);padding:18px 20px}
.lpa-wizard-wrap .lpa-attorney-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid #eef1f8}
.lpa-wizard-wrap .lpa-attorney-card-header strong{color:var(--lpa-dark);font-size:.93em}
.lpa-wizard-wrap .lpa-remove-attorney{background:none!important;border:none!important;color:var(--lpa-red)!important;cursor:pointer;font-size:.82em;font-family:inherit;padding:4px 10px;min-height:44px}
.lpa-wizard-wrap .lpa-btn-add-attorney{background:#e8f0fb!important;color:var(--lpa-primary)!important;border:1.5px dashed var(--lpa-primary)!important;padding:10px 20px!important;border-radius:var(--lpa-r)!important;cursor:pointer;font-size:.88em!important;font-weight:600!important;font-family:inherit;min-height:44px;display:inline-flex;align-items:center}
.lpa-wizard-wrap .lpa-btn-add-attorney:hover{background:var(--lpa-primary)!important;color:#fff!important}

/* ── LPA question heading ────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-questions-heading{font-size:1em;color:var(--lpa-dark);font-weight:700;margin:0 0 16px;padding:10px 16px;background:#f0f5fd;border-left:4px solid var(--lpa-primary);border-radius:0 var(--lpa-r) var(--lpa-r) 0}

/* ── Summary ─────────────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-summary-section{background:#fff;border:1.5px solid var(--lpa-border);border-radius:var(--lpa-r);margin-bottom:14px;overflow:hidden}
.lpa-wizard-wrap .lpa-summary-section-header{background:var(--lpa-dark);color:#fff;padding:10px 18px;font-size:.82em;font-weight:600;letter-spacing:.04em;text-transform:uppercase;display:flex;justify-content:space-between;align-items:center}
.lpa-wizard-wrap .lpa-edit-link{color:#b0c4e8!important;font-size:.82em;font-weight:400;text-decoration:underline;letter-spacing:0;text-transform:none}
.lpa-wizard-wrap .lpa-summary-row{display:flex;justify-content:space-between;padding:10px 18px;border-bottom:1px solid #f0f4fb;font-size:.88em;gap:12px}
.lpa-wizard-wrap .lpa-summary-row:last-child{border-bottom:none}
.lpa-wizard-wrap .lpa-summary-row span:first-child{color:var(--lpa-muted);font-weight:600;min-width:140px;flex-shrink:0}
.lpa-wizard-wrap .lpa-summary-total{background:#f4f7fc}

/* ── Payment ─────────────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-price-summary-box{background:#f0f5fd;border:1.5px solid #c2d4f0;border-radius:var(--lpa-r);padding:18px 22px;margin-bottom:24px}
.lpa-wizard-wrap .lpa-price-total{display:flex;justify-content:space-between;align-items:center;padding-top:10px;margin-top:8px;border-top:2px solid #c2d4f0;font-size:1.05em;color:var(--lpa-dark)}
.lpa-wizard-wrap .lpa-price-total-amount{font-size:1.35em;font-weight:700;color:var(--lpa-dark)}
.lpa-wizard-wrap .lpa-payment-methods{display:flex;flex-direction:column;gap:12px}
.lpa-wizard-wrap .lpa-payment-option{display:block;cursor:pointer}
.lpa-wizard-wrap .lpa-payment-option input[type="radio"]{position:absolute;opacity:0;width:0;height:0}
.lpa-wizard-wrap .lpa-payment-option-inner{border:2px solid var(--lpa-border);border-radius:var(--lpa-r);padding:16px 18px;background:#fff;transition:all var(--lpa-t)}
.lpa-wizard-wrap .lpa-payment-option:hover .lpa-payment-option-inner{border-color:var(--lpa-primary)}
.lpa-wizard-wrap .lpa-payment-option input:checked~.lpa-payment-option-inner{border-color:var(--lpa-dark);background:#f0f5fd}
.lpa-wizard-wrap .lpa-payment-option-header{display:flex;align-items:center;gap:12px}
.lpa-wizard-wrap .lpa-payment-radio-circle{width:20px;height:20px;border-radius:50%;border:2px solid #b0bfd6;flex-shrink:0;position:relative}
.lpa-wizard-wrap .lpa-payment-option input:checked~.lpa-payment-option-inner .lpa-payment-radio-circle{border-color:var(--lpa-dark)}
.lpa-wizard-wrap .lpa-payment-option input:checked~.lpa-payment-option-inner .lpa-payment-radio-circle::after{content:'';position:absolute;top:3px;left:3px;width:10px;height:10px;border-radius:50%;background:var(--lpa-dark)}
.lpa-wizard-wrap .lpa-payment-brand{display:flex;align-items:center;gap:10px}
.lpa-wizard-wrap .lpa-payment-brand-logo{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700}
.lpa-wizard-wrap .lpa-dc-logo{background:linear-gradient(135deg,#204578,#4676b9);color:#fff;font-size:.85em}
.lpa-wizard-wrap .lpa-stripe-logo{background:#f0f5fd;font-size:1.3em}
.lpa-wizard-wrap .lpa-payment-brand strong{display:block;color:var(--lpa-dark);font-size:.93em}
.lpa-wizard-wrap .lpa-payment-badge{background:#e6a817;color:#fff;font-size:.68em;padding:2px 7px;border-radius:3px;font-weight:700;text-transform:uppercase;margin-left:8px;vertical-align:middle}
.lpa-wizard-wrap .lpa-payment-cards{font-size:.78em;color:var(--lpa-muted)}
.lpa-wizard-wrap .lpa-payment-option-featured .lpa-payment-option-inner{border-color:var(--lpa-primary);background:#f8faff}
.lpa-wizard-wrap .lpa-payment-desc{font-size:.82em;color:var(--lpa-muted);margin-top:10px;padding-left:32px}
.lpa-wizard-wrap .lpa-stripe-card-element{margin-top:12px;padding:12px 14px;border:1.5px solid var(--lpa-border);border-radius:var(--lpa-r);background:#fff}
.lpa-wizard-wrap .lpa-btn-pay{min-width:200px!important;justify-content:center!important}

/* ── Complete screen ─────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-complete-box{background:#fff;border-radius:var(--lpa-rl);padding:44px 36px;text-align:center;box-shadow:0 4px 20px rgba(32,69,120,.12);max-width:600px;margin:0 auto}
.lpa-wizard-wrap .lpa-complete-icon{width:72px;height:72px;background:linear-gradient(135deg,#4676b9,#2ecc87);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 22px;font-size:2em}
.lpa-wizard-wrap .lpa-complete-box h2{font-size:1.5em;color:#204578;margin-bottom:10px}
.lpa-wizard-wrap .lpa-complete-box p{font-size:.93em;color:#6b7fa0;line-height:1.6}
.lpa-wizard-wrap .lpa-complete-ref{background:#f0f5fd;border:1px solid #c2d4f0;border-radius:8px;padding:14px 20px;margin:18px 0;font-size:1em;color:#204578;font-weight:600}
.lpa-wizard-wrap .lpa-next-steps{text-align:left;border:1.5px solid var(--lpa-border);border-radius:var(--lpa-r);overflow:hidden;margin:20px 0}
.lpa-wizard-wrap .lpa-next-step-item{display:flex;gap:14px;padding:14px 18px;border-bottom:1px solid #eef1f8}
.lpa-wizard-wrap .lpa-next-step-item:last-child{border-bottom:none}
.lpa-wizard-wrap .lpa-next-step-num{width:26px;height:26px;background:var(--lpa-primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.82em;flex-shrink:0;margin-top:2px}
.lpa-wizard-wrap .lpa-next-step-item strong{display:block;color:var(--lpa-dark);font-size:.88em;margin-bottom:4px}
.lpa-wizard-wrap .lpa-next-step-item p{font-size:.82em;color:#6b7fa0;line-height:1.5;margin:0}
.lpa-wizard-wrap .lpa-pdf-link{display:inline-flex!important;align-items:center;gap:8px;background:#4676b9!important;color:#fff!important;padding:11px 24px;border-radius:50px;font-weight:600;text-decoration:none!important;margin-top:14px;font-size:.92em}
.lpa-wizard-wrap .lpa-pdf-link:hover{background:#204578!important}

/* ── AIRC tab bar ────────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-airc-tab-bar{display:flex;border-bottom:2px solid var(--lpa-border);margin-bottom:18px}
.lpa-wizard-wrap .lpa-airc-tab{flex:1;padding:11px;background:none!important;border:none!important;border-bottom:3px solid transparent!important;margin-bottom:-2px;font-family:inherit;font-size:.93em;font-weight:600;color:var(--lpa-muted)!important;cursor:pointer;min-height:44px}
.lpa-wizard-wrap .lpa-airc-tab.lpa-airc-tab-active{color:var(--lpa-dark)!important;border-bottom-color:var(--lpa-primary)!important}

/* ── Modals ──────────────────────────────────────────────────────────────────── */
.lpa-modal-overlay{position:fixed;inset:0;background:rgba(10,25,60,.55);z-index:100000;display:flex;align-items:center;justify-content:center;padding:16px;animation:lpaFadeIn .2s ease}
.lpa-modal-box{background:#fff;border-radius:14px;max-width:640px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 40px rgba(32,69,120,.20);animation:lpaSlideUp .3s ease}
.lpa-modal-auth{max-width:900px;padding:0!important;overflow:hidden}

/* ── Split modal layout ──────────────────────────────────────────────────────── */
.lpa-modal-split-overlay{align-items:center;justify-content:center;padding:12px}
.lpa-modal-split{
  display:flex;width:100%;min-height:540px;border-radius:14px;overflow:hidden;
  box-shadow:0 16px 60px rgba(10,25,60,.35);
  background:#fff;
  max-width:900px;
  max-height:92vh;
}

/* Left: image panel */
.lpa-modal-split-left{
  flex:0 0 42%;
  position:relative;
  background:#204578;
  display:flex;align-items:flex-end;
  overflow:hidden;
}
.lpa-modal-split-img{
  position:absolute;inset:0;
  background:url('https://five-minute-lpa.lovable.app/assets/professional-d2XYoGbg.jpg') center/cover no-repeat;
  opacity:.55;
}
.lpa-modal-split-overlay-content{
  position:relative;z-index:2;
  padding:32px 28px;color:#fff;
}
.lpa-modal-split-overlay-content h2{
  font-size:1.4em;font-weight:700;line-height:1.25;
  margin-bottom:10px;letter-spacing:-.01em;
}
.lpa-modal-split-overlay-content p{
  font-size:.88em;opacity:.85;line-height:1.6;margin-bottom:16px;
}
.lpa-modal-split-bullets{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
.lpa-modal-split-bullets li{font-size:.82em;opacity:.9;display:flex;align-items:center;gap:4px}

/* Right: form panel */
.lpa-modal-split-right{
  flex:1;
  overflow-y:auto;
  position:relative;
  background:#fff;
  max-height:92vh;
  scrollbar-width:thin;
}
.lpa-modal-split-right::-webkit-scrollbar{width:4px}
.lpa-modal-split-right::-webkit-scrollbar-thumb{background:#dde6f2;border-radius:2px}

/* Close button on right panel */
.lpa-modal-close-split{
  position:absolute;top:14px;right:14px;
  background:#f4f7fc!important;border:none!important;border-radius:50%!important;
  width:32px;height:32px;display:flex;align-items:center;justify-content:center;
  cursor:pointer;color:#6b7fa0!important;transition:all var(--lpa-t);
  z-index:10;padding:0!important;flex-shrink:0;
}
.lpa-modal-close-split:hover{background:#dde6f2!important;color:var(--lpa-dark)!important}

/* Form content inside right panel */
.lpa-split-form-wrap{padding:36px 32px 28px}

.lpa-split-form-header{margin-bottom:22px}
.lpa-split-form-header h3{font-size:1.3em;font-weight:700;color:var(--lpa-dark);margin-bottom:5px}
.lpa-split-form-header p{font-size:.875em;color:var(--lpa-muted);line-height:1.5}

/* Override auth tabs in new layout */
.lpa-modal-split .lpa-auth-tabs{border-bottom:2px solid #e4ecf7;margin-bottom:0}
.lpa-modal-split .lpa-auth-tab{min-height:40px;border-bottom:2px solid transparent!important}
.lpa-modal-split .lpa-auth-panel{padding:18px 0 0}

/* Skip row at bottom */
.lpa-split-skip{
  display:flex;align-items:center;gap:12px;
  margin-top:20px;padding-top:16px;
  border-top:1px solid #f0f4fb;
}
.lpa-split-skip span{font-size:.8em;color:var(--lpa-muted);flex-shrink:0}
.lpa-split-skip-btn{
  background:none!important;border:none!important;
  color:var(--lpa-muted)!important;font-size:.82em;
  cursor:pointer;text-decoration:underline;
  font-family:inherit;padding:0!important;
  transition:color var(--lpa-t);min-height:36px;
}
.lpa-split-skip-btn:hover{color:var(--lpa-dark)!important}

/* Mobile: stack vertically */
@media(max-width:640px){
  .lpa-modal-split{flex-direction:column;max-height:94vh}
  .lpa-modal-split-left{flex:0 0 160px;align-items:center}
  .lpa-modal-split-overlay-content{padding:20px;text-align:center}
  .lpa-modal-split-overlay-content h2{font-size:1.1em}
  .lpa-modal-split-bullets{display:none}
  .lpa-split-form-wrap{padding:24px 18px 20px}
}
@keyframes lpaSlideUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.lpa-modal-header{position:relative;background:linear-gradient(135deg,#204578 0%,#4676b9 100%);color:#fff;padding:24px 28px;border-radius:14px 14px 0 0;text-align:center}
.lpa-modal-header h2{font-size:1.5em;font-weight:700;margin-bottom:5px}
.lpa-modal-subtitle{font-size:.88em;opacity:.85}
.lpa-modal-body{padding:22px 28px}
.lpa-modal-footer{padding:14px 28px 24px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.lpa-gdpr-text{font-size:.88em;color:#444;line-height:1.7;margin-bottom:14px}
.lpa-gdpr-consent-intro{font-size:.875em;color:#333;margin-bottom:6px;line-height:1.5}
.lpa-gdpr-select-prompt{font-size:.875em;font-weight:700;color:#333;margin:8px 0 18px}
.lpa-consent-rows{display:flex;flex-direction:column;gap:12px;margin-bottom:18px}
.lpa-consent-row{display:flex;align-items:center;gap:10px;font-size:.87em;color:#333}
.lpa-radio-inline{display:inline-flex;align-items:center;gap:5px;cursor:pointer}
.lpa-radio-inline input[type="radio"]{width:17px;height:17px;accent-color:#204578;cursor:pointer}
.lpa-radio-inline span{font-weight:700;font-size:.9em;color:#204578}
.lpa-consent-label{flex:1;line-height:1.4}
.lpa-gdpr-note{font-size:.8em;color:#777;margin-bottom:5px;line-height:1.5}

/* ── Auth modal — clean inline login ────────────────────────────────────────── */
.lpa-auth-tabs{display:flex;border-bottom:2px solid #e4ecf7}
.lpa-auth-tab{flex:1;padding:13px;background:none!important;border:none!important;border-bottom:2px solid transparent!important;margin-bottom:-2px;font-family:inherit;font-size:.9em;font-weight:600;color:#6b7fa0!important;cursor:pointer;min-height:44px}
.lpa-auth-tab.lpa-auth-tab-active{color:#204578!important;border-bottom-color:#4676b9!important}
.lpa-auth-panel{padding:20px 28px 0}
.lpa-auth-note{text-align:center;font-size:.8em;color:#6b7fa0;padding:0 28px 12px;margin-top:-4px;line-height:1.5}
.lpa-forgot{text-align:center;margin-top:10px;font-size:.83em;padding-bottom:6px}
.lpa-forgot a{color:#4676b9!important;text-decoration:none}

/* ── Exit banner ─────────────────────────────────────────────────────────────── */
.lpa-exit-banner{position:fixed;top:0;left:0;right:0;background:linear-gradient(90deg,#204578,#4676b9)!important;color:#fff;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:14px;z-index:100000;animation:lpaSlideDown .3s ease;box-shadow:0 4px 20px rgba(32,69,120,.3);flex-wrap:wrap}
@keyframes lpaSlideDown{from{transform:translateY(-100%)}to{transform:translateY(0)}}
.lpa-exit-banner p{font-size:.93em;font-weight:500}
.lpa-exit-banner-actions{display:flex;gap:10px;flex-shrink:0}
.lpa-exit-banner-btn{background:#fff!important;color:#204578!important;border:none!important;padding:8px 18px;border-radius:50px;font-size:.875em;font-weight:700;cursor:pointer;font-family:inherit;min-height:40px}
.lpa-exit-banner-dismiss{background:transparent!important;border:1px solid rgba(255,255,255,.5)!important;color:#fff!important;padding:8px 14px;border-radius:50px;font-size:.875em;cursor:pointer;font-family:inherit;min-height:40px}

/* Hide old Phase 1 placeholder permanently */
.lpa-wizard-wrap .lpa-step[data-step='coming-soon']{display:none!important}
/* Complete step — reduce top gap since top-bar/progress are hidden on this step */
.lpa-wizard-wrap .lpa-step[data-step='complete'] .lpa-step-inner{padding-top:16px!important}
/* OPG fee amount — force inline so theme strong {display:block} rules can't break the sentence */
.lpa-wizard-wrap #lpa-complete-opg-fee{display:inline!important;font-weight:700!important}
/* Couple pricing labels on doc-type cards */
.lpa-wizard-wrap .lpa-couple-each{font-size:.62em;font-weight:500;color:var(--lpa-muted);margin-left:1px}
.lpa-wizard-wrap .lpa-couple-total{font-size:.62em;font-weight:500;color:var(--lpa-muted)}
.lpa-wizard-wrap .lpa-couple-discount-badge{display:inline-block;background:#e0f2e9;color:#15803d;font-size:.72em;font-weight:700;padding:2px 9px;border-radius:3px;margin-top:6px;margin-bottom:8px;letter-spacing:.01em}

/* ════════════════════════════════════════════════════
   RESPONSIVE — iPhone-first, thorough
   ════════════════════════════════════════════════════ */

/* Tablet */
@media(max-width:900px){
  .lpa-wizard-wrap .lpa-step-inner{padding:32px 28px 40px}
  .lpa-wizard-wrap .lpa-nav-buttons{padding:12px 20px;padding-bottom:max(12px,env(safe-area-inset-bottom))}
}

/* Large phone / small tablet */
@media(max-width:680px){
  .lpa-wizard-wrap .lpa-step-inner{padding:24px 16px 36px}
  .lpa-wizard-wrap .lpa-step-title{font-size:1.35em}
  .lpa-wizard-wrap .lpa-step-sub{font-size:.88em}
  .lpa-wizard-wrap .lpa-form-row{flex-direction:column;gap:0}
  .lpa-wizard-wrap .lpa-radio-group-cards{flex-direction:column}
  .lpa-wizard-wrap .lpa-doc-card{min-width:unset}
  .lpa-wizard-wrap .lpa-dob-row input[type="number"]{width:62px}
  .lpa-wizard-wrap .lpa-attorney-card{padding:14px 14px}
  .lpa-wizard-wrap .lpa-summary-row{flex-direction:column;gap:4px}
  .lpa-wizard-wrap .lpa-summary-row span:first-child{min-width:unset}
  .lpa-modal-header,.lpa-modal-body,.lpa-modal-footer,.lpa-auth-panel{padding-left:16px;padding-right:16px}
  .lpa-wizard-wrap .lpa-nav-buttons{padding:12px 14px;padding-bottom:max(12px,env(safe-area-inset-bottom))}
  .lpa-wizard-wrap .lpa-top-bar{padding:10px 14px}
  .lpa-wizard-wrap .lpa-btn,.lpa-wizard-wrap button.lpa-btn{padding:12px 22px!important;font-size:.92em!important}
  .lpa-exit-banner{flex-direction:column;gap:10px;text-align:center}
  .lpa-exit-banner-actions{justify-content:center}
  .lpa-wizard-wrap .lpa-complete-box{padding:28px 18px}
  .lpa-wizard-wrap .lpa-next-step-item{padding:12px 14px}
  .lpa-wizard-wrap .lpa-price-summary-box{padding:14px 16px}
  .lpa-wizard-wrap .lpa-payment-option-inner{padding:14px}
}

/* iPhone SE / small phones */
@media(max-width:390px){
  .lpa-wizard-wrap .lpa-step-inner{padding:20px 12px 32px}
  .lpa-wizard-wrap .lpa-step-title{font-size:1.22em}
  .lpa-wizard-wrap .lpa-btn,.lpa-wizard-wrap button.lpa-btn{padding:12px 16px!important;font-size:.88em!important}
  .lpa-modal-footer{flex-direction:column-reverse;gap:8px}
  .lpa-modal-footer .lpa-btn{width:100%!important;justify-content:center!important}
  .lpa-wizard-wrap .lpa-dob-row{flex-wrap:wrap}
  .lpa-wizard-wrap .lpa-dob-row input[type="number"]{width:58px}
}

/* iPhone landscape */
@media(max-height:500px) and (orientation:landscape){
  .lpa-wizard-wrap .lpa-steps-container{padding-bottom:80px}
  .lpa-wizard-wrap .lpa-step-inner{padding:16px 20px 24px}
  .lpa-wizard-wrap .lpa-nav-buttons{padding:8px 16px}
}

/* ══════════════════════════════════════════════════
   SUMMARY PAGE — Professional review before payment
   ══════════════════════════════════════════════════ */

.lpa-wizard-wrap .lpa-sum-wrap {
  max-width: 780px;
}

/* Header */
.lpa-wizard-wrap .lpa-sum-header {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  background: linear-gradient(135deg, #1a2f52 0%, #204578 100%);
  border-radius: var(--lpa-r);
  padding: 22px 24px;
  margin-bottom: 18px;
  color: #fff;
}

.lpa-wizard-wrap .lpa-sum-header-icon {
  font-size: 1.6em;
  flex-shrink: 0;
  margin-top: 2px;
}

.lpa-wizard-wrap .lpa-sum-header-title {
  font-size: 1.15em;
  font-weight: 700;
  color: #fff;
  margin: 0 0 5px;
  letter-spacing: -.01em;
}

.lpa-wizard-wrap .lpa-sum-header-sub {
  font-size: .83em;
  color: rgba(255,255,255,.75);
  line-height: 1.55;
  margin: 0;
}

/* Meta badges */
.lpa-wizard-wrap .lpa-sum-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 20px;
}

.lpa-wizard-wrap .lpa-sum-meta-item {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: var(--lpa-white);
  border: 1px solid var(--lpa-border);
  border-radius: 20px;
  padding: 4px 12px;
  font-size: .78em;
  font-weight: 600;
  color: var(--lpa-dark);
  white-space: nowrap;
}

/* Section cards */
.lpa-wizard-wrap .lpa-sum-card {
  background: var(--lpa-white);
  border: 1px solid var(--lpa-border);
  border-radius: var(--lpa-r);
  overflow: hidden;
  margin-bottom: 12px;
  box-shadow: 0 1px 4px rgba(32,69,120,.05);
}

.lpa-wizard-wrap .lpa-sum-card-hd {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 11px 18px;
  background: #f4f7fc;
  border-bottom: 1px solid var(--lpa-border);
}

.lpa-wizard-wrap .lpa-sum-card-title {
  font-size: .82em;
  font-weight: 700;
  color: var(--lpa-dark);
  letter-spacing: .02em;
}

.lpa-wizard-wrap .lpa-edit-link {
  font-size: .78em !important;
  color: var(--lpa-primary) !important;
  text-decoration: none !important;
  font-weight: 600;
  padding: 3px 10px;
  border: 1px solid var(--lpa-primary);
  border-radius: 4px;
  transition: all .15s ease;
  white-space: nowrap;
}

.lpa-wizard-wrap .lpa-edit-link:hover {
  background: var(--lpa-primary) !important;
  color: #fff !important;
}

.lpa-wizard-wrap .lpa-sum-card-body {
  padding: 4px 0;
}

/* Rows */
.lpa-wizard-wrap .lpa-sum-row {
  display: flex;
  gap: 16px;
  padding: 8px 18px;
  border-bottom: 1px solid #f0f4fb;
  font-size: .875em;
  line-height: 1.5;
}

.lpa-wizard-wrap .lpa-sum-row:last-child {
  border-bottom: none;
}

.lpa-wizard-wrap .lpa-sum-key {
  color: var(--lpa-muted);
  font-weight: 500;
  min-width: 170px;
  flex-shrink: 0;
  font-size: .9em;
}

.lpa-wizard-wrap .lpa-sum-val {
  color: var(--lpa-text);
  flex: 1;
  word-break: break-word;
}

/* Price card */
.lpa-wizard-wrap .lpa-sum-price-card {
  border-color: #c2d4f0;
  border-width: 1.5px;
}

.lpa-wizard-wrap .lpa-sum-price-card .lpa-sum-card-hd {
  background: var(--lpa-dark);
}

.lpa-wizard-wrap .lpa-sum-price-card .lpa-sum-card-title {
  color: #fff;
}

.lpa-wizard-wrap .lpa-sum-total-row {
  background: #f0f5fd;
  border-top: 2px solid #c2d4f0!important;
}

.lpa-wizard-wrap .lpa-sum-total-val {
  font-size: 1.15em !important;
  font-weight: 700 !important;
  color: var(--lpa-dark) !important;
}

/* Confirmation note */
.lpa-wizard-wrap .lpa-sum-confirm-note {
  background: #f0f9f4;
  border: 1px solid #a7d7b8;
  border-left: 4px solid var(--lpa-green);
  border-radius: var(--lpa-r);
  padding: 14px 18px;
  margin-top: 16px;
  font-size: .875em;
  color: #1a4731;
  line-height: 1.6;
}

/* Mobile summary */
@media(max-width:680px) {
  .lpa-wizard-wrap .lpa-sum-row { flex-direction: column; gap: 3px; padding: 8px 14px; }
  .lpa-wizard-wrap .lpa-sum-key { min-width: unset; }
  .lpa-wizard-wrap .lpa-sum-card-hd { padding: 10px 14px; flex-wrap: wrap; gap: 6px; }
  .lpa-wizard-wrap .lpa-sum-header { padding: 16px; }
  .lpa-wizard-wrap .lpa-sum-header-title { font-size: 1em; }
}

/* ── Relationship dropdown ──────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-relationship-select {
  width: 100%;
  padding: 12px 36px 12px 14px;
  border: 1.5px solid var(--lpa-border) !important;
  border-radius: var(--lpa-r) !important;
  font-size: max(16px, .95em) !important;
  font-family: inherit;
  color: var(--lpa-text) !important;
  background: var(--lpa-white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23204578' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 14px center !important;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  transition: border-color var(--lpa-t), box-shadow var(--lpa-t);
}
.lpa-wizard-wrap .lpa-relationship-select:focus {
  border-color: var(--lpa-primary) !important;
  box-shadow: 0 0 0 3px rgba(70,118,185,.15) !important;
  outline: none !important;
}

/* ── Coupon section on payment page ─────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-coupon-wrap {
  margin-bottom: 20px;
}
.lpa-wizard-wrap .lpa-coupon-label {
  font-size: .875em;
  font-weight: 600;
  color: var(--lpa-dark);
  margin-bottom: 8px;
}
.lpa-wizard-wrap .lpa-coupon-row {
  display: flex;
  gap: 10px;
  margin-top: 6px;
  flex-wrap: wrap;
}
.lpa-wizard-wrap .lpa-coupon-row input[type="text"] {
  flex: 1;
  min-width: 160px;
  padding: 10px 14px;
  border: 1.5px solid var(--lpa-border) !important;
  border-radius: var(--lpa-r) !important;
  font-size: max(16px, .9em) !important;
  font-family: inherit;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.lpa-wizard-wrap .lpa-coupon-row input:focus {
  border-color: var(--lpa-primary) !important;
  box-shadow: 0 0 0 3px rgba(70,118,185,.12) !important;
  outline: none !important;
}
.lpa-wizard-wrap .lpa-coupon-apply {
  white-space: nowrap;
}
.lpa-wizard-wrap .lpa-coupon-msg {
  font-size: .83em;
  font-weight: 600;
  margin-top: 6px;
}

/* ── OPG registration fee notice ────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-opg-notice {
  display: flex;
  gap: 14px;
  background: #f0f5fd;
  border: 1px solid #c2d4f0;
  border-left: 4px solid var(--lpa-primary);
  border-radius: var(--lpa-r);
  padding: 16px 20px;
  margin-top: 24px;
  align-items: flex-start;
}
.lpa-wizard-wrap .lpa-opg-notice-icon {
  font-size: 1.2em;
  flex-shrink: 0;
  margin-top: 1px;
}
.lpa-wizard-wrap .lpa-opg-notice-body {
  font-size: .875em;
  color: var(--lpa-text);
  line-height: 1.6;
}
.lpa-wizard-wrap .lpa-opg-notice-body p {
  margin: 0 0 6px;
}
.lpa-wizard-wrap .lpa-opg-notice-body p:last-child {
  margin-bottom: 0;
}
.lpa-wizard-wrap .lpa-opg-notice-body a {
  color: var(--lpa-primary) !important;
  font-weight: 600;
  text-decoration: underline;
}

/* ── Summary confirmation modal ─────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-confirm-box {
  max-width: 520px !important;
  border-radius: 14px;
  overflow: hidden;
}
.lpa-wizard-wrap .lpa-confirm-header {
  background: linear-gradient(135deg, #1a2f52 0%, #204578 100%);
  padding: 24px 28px;
  display: flex;
  align-items: center;
  gap: 14px;
  color: #fff;
}
.lpa-wizard-wrap .lpa-confirm-icon {
  font-size: 1.6em;
  flex-shrink: 0;
}
.lpa-wizard-wrap .lpa-confirm-header h2 {
  font-size: 1.15em;
  font-weight: 700;
  color: #fff;
  margin: 0;
}
.lpa-wizard-wrap .lpa-confirm-body {
  padding: 22px 28px 8px;
}
.lpa-wizard-wrap .lpa-confirm-body p {
  font-size: .9em;
  color: var(--lpa-text);
  line-height: 1.6;
  margin-bottom: 12px;
}
.lpa-wizard-wrap .lpa-confirm-check {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  background: #f0f5fd;
  border: 1.5px solid #c2d4f0;
  border-radius: var(--lpa-r);
  cursor: pointer;
  margin-top: 6px;
  font-size: .9em;
  color: var(--lpa-dark);
  font-weight: 600;
  line-height: 1.5;
}
.lpa-wizard-wrap .lpa-confirm-check input[type="checkbox"] {
  width: 20px;
  height: 20px;
  accent-color: var(--lpa-dark);
  cursor: pointer;
  flex-shrink: 0;
  margin-top: 2px;
}
@media(max-width:480px) {
  .lpa-wizard-wrap .lpa-confirm-header { padding: 18px 18px; }
  .lpa-wizard-wrap .lpa-confirm-body   { padding: 16px 18px 6px; }
}

/* ══════════════════════════════════════════════════════════════════════
   BUTTON ANTI-OVERRIDE — ID-based rules to beat any theme CSS.
   These target the actual element IDs so no theme chain can win.
   ══════════════════════════════════════════════════════════════════════ */

/* Primary — Next button */
#lpa-next-btn,
#lpa-wizard-wrap #lpa-next-btn {
  display: inline-flex !important;
  align-items: center !important;
  padding: 13px 32px !important;
  background: #4676b9 !important;
  color: #fff !important;
  border: 2px solid #4676b9 !important;
  border-radius: 50px !important;
  font-size: 1em !important;
  font-weight: 700 !important;
  font-family: inherit !important;
  line-height: 1.2 !important;
  letter-spacing: .02em !important;
  cursor: pointer !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-shadow: 0 4px 14px rgba(70,118,185,.35) !important;
  transition: all .18s ease !important;
  outline: none !important;
}
#lpa-next-btn:hover,
#lpa-wizard-wrap #lpa-next-btn:hover {
  background: #204578 !important;
  border-color: #204578 !important;
  color: #fff !important;
  box-shadow: 0 6px 18px rgba(32,69,120,.4) !important;
}
#lpa-next-btn:disabled,
#lpa-wizard-wrap #lpa-next-btn:disabled {
  opacity: .55 !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
}

/* Secondary — Previous button */
#lpa-prev-btn,
#lpa-wizard-wrap #lpa-prev-btn {
  display: inline-flex !important;
  align-items: center !important;
  padding: 13px 32px !important;
  background: transparent !important;
  color: #4676b9 !important;
  border: 2px solid #4676b9 !important;
  border-radius: 50px !important;
  font-size: 1em !important;
  font-weight: 700 !important;
  font-family: inherit !important;
  line-height: 1.2 !important;
  letter-spacing: .02em !important;
  cursor: pointer !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: all .18s ease !important;
  outline: none !important;
  box-shadow: none !important;
}
#lpa-prev-btn.lpa-nav-hidden,
#lpa-wizard-wrap #lpa-prev-btn.lpa-nav-hidden {
  display: none !important;
}
#lpa-prev-btn:hover,
#lpa-wizard-wrap #lpa-prev-btn:hover {
  background: #4676b9 !important;
  color: #fff !important;
}

/* Save/Quit button */
#lpa-save-quit,
#lpa-wizard-wrap #lpa-save-quit {
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.55) !important;
  color: #fff !important;
  padding: 5px 14px !important;
  font-size: 11px !important;
  letter-spacing: .08em !important;
  cursor: pointer !important;
  text-transform: uppercase !important;
  border-radius: 4px !important;
  font-family: inherit !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
  outline: none !important;
  text-decoration: none !important;
}
#lpa-save-quit:hover,
#lpa-wizard-wrap #lpa-save-quit:hover {
  background: rgba(255,255,255,.15) !important;
}

/* Saving indicator */
#lpa-saving,
#lpa-wizard-wrap #lpa-saving {
  position: fixed !important;
  bottom: 80px !important;
  right: 16px !important;
  background: #204578 !important;
  color: #fff !important;
  padding: 8px 16px !important;
  border-radius: 8px !important;
  font-size: .82em !important;
  /* NO display:flex here — JS controls visibility via fadeIn/fadeOut */
  align-items: center !important;
  gap: 8px !important;
  z-index: 10001 !important;
  box-shadow: 0 4px 12px rgba(32,69,120,.25) !important;
  font-family: inherit !important;
}

/* Nav bar */
#lpa-nav-buttons,
#lpa-wizard-wrap #lpa-nav-buttons {
  position: fixed !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  background: #fff !important;
  border-top: 1px solid #dde5f0 !important;
  padding: 14px 24px !important;
  padding-bottom: max(14px, env(safe-area-inset-bottom)) !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  z-index: 9999 !important;
  box-shadow: 0 -2px 12px rgba(32,69,120,.08) !important;
}

/* Force-hidden state — used on payment/complete/auto steps.
   Must use !important to beat the display:flex !important above. */
#lpa-nav-buttons.lpa-nav-hidden,
#lpa-wizard-wrap #lpa-nav-buttons.lpa-nav-hidden {
  display: none !important;
}
/* Hide just the Next button on auto-advance steps (Previous stays visible) */
#lpa-next-btn.lpa-nav-hidden,
#lpa-wizard-wrap #lpa-next-btn.lpa-nav-hidden {
  display: none !important;
}

/* ── Resume prompt ──────────────────────────────────────────────────────────── */
.lpa-wizard-wrap .lpa-resume-prompt {
  background: linear-gradient(135deg, #f0f5fd 0%, #e8eef9 100%);
  border: 1.5px solid #c2d4f0;
  border-left: 4px solid var(--lpa-primary);
  border-radius: var(--lpa-r);
  padding: 18px 22px;
  margin-bottom: 24px;
}
.lpa-wizard-wrap .lpa-resume-prompt-inner {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.lpa-wizard-wrap .lpa-resume-icon {
  font-size: 1.8em;
  flex-shrink: 0;
}
.lpa-wizard-wrap .lpa-resume-text {
  flex: 1;
  min-width: 180px;
  font-size: .9em;
  color: var(--lpa-dark);
  line-height: 1.5;
}
.lpa-wizard-wrap .lpa-resume-text strong {
  display: block;
  font-size: 1em;
  margin-bottom: 3px;
}
.lpa-wizard-wrap .lpa-resume-step {
  display: block;
  color: var(--lpa-muted);
  font-size: .85em;
}
.lpa-wizard-wrap .lpa-resume-step em {
  color: var(--lpa-primary);
  font-style: normal;
  font-weight: 600;
}
.lpa-wizard-wrap .lpa-resume-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
@media(max-width:540px) {
  .lpa-wizard-wrap .lpa-resume-prompt-inner { flex-direction: column; align-items: flex-start; }
}
