.mce-reg{
  --bg:#efece5;--panel:#f6f4ef;--ink:#2b2b2b;--muted:#6f6a61;--line:#dcd6ca;
  --gold:#b3923f;--gold-dark:#9a7c33;--gold-soft:#f3ecd9;--field:#fff;--err:#b3403a;
  color:var(--ink);font-family:"Segoe UI",Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5;
}
.mce-reg *{box-sizing:border-box;}

.mce-progress{display:flex;align-items:center;justify-content:space-between;margin:0 0 26px;gap:4px;}
.mce-step{display:flex;flex-direction:column;align-items:center;flex:1;text-align:center;position:relative;cursor:default;}
.mce-step.done,.mce-step.active{cursor:pointer;}
.mce-dot{width:34px;height:34px;border-radius:50%;background:#ded8cc;color:#7a7466;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:15px;border:2px solid transparent;transition:.2s;}
.mce-step.active .mce-dot{background:var(--gold);color:#fff;}
.mce-step.done .mce-dot{background:var(--gold-soft);color:var(--gold-dark);border-color:var(--gold);}
.mce-lbl{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.25;max-width:120px;}
.mce-step.active .mce-lbl{color:var(--ink);font-weight:600;}
.mce-bar{position:absolute;top:17px;left:50%;width:100%;height:2px;background:var(--line);z-index:0;}
.mce-step:last-child .mce-bar{display:none;}
.mce-dot,.mce-lbl{position:relative;z-index:1;}

.mce-grid{display:grid;grid-template-columns:1fr 320px;gap:26px;align-items:start;}
.mce-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:26px 28px;box-shadow:0 1px 3px rgba(0,0,0,.06);}
.mce-card h2{font-size:18px;margin:0 0 4px;}
.mce-hint{color:var(--muted);font-size:13.5px;margin:0 0 20px;}
.mce-opt{font-weight:400;color:var(--muted);}

.mce-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:16px;}
.mce-row.one{grid-template-columns:1fr;}
.mce-reg label{display:block;font-size:13.5px;font-weight:600;margin-bottom:6px;}
.mce-reg label .req{color:var(--err);}
.mce-reg input[type=text],.mce-reg input[type=email],.mce-reg input[type=tel],.mce-reg input[type=number],.mce-reg select,.mce-reg textarea{
  width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:7px;background:var(--field);font-size:15px;color:var(--ink);outline:none;font-family:inherit;}
.mce-reg input:focus,.mce-reg select:focus,.mce-reg textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(179,146,63,.15);}
.mce-field-err input,.mce-field-err select{border-color:var(--err);}
.mce-msg{color:var(--err);font-size:12.5px;margin-top:5px;display:none;}
.mce-field-err .mce-msg{display:block;}

.mce-dates{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;}
.mce-date-opt{border:1px solid var(--line);border-radius:8px;padding:14px 14px 14px 42px;background:var(--field);cursor:pointer;position:relative;transition:.15s;}
.mce-date-opt:hover{border-color:var(--gold);}
.mce-date-opt.sel{border-color:var(--gold);background:var(--gold-soft);}
.mce-date-opt input{position:absolute;left:14px;top:16px;width:auto;}
.mce-date-opt .d{font-size:14.5px;font-weight:600;}
.mce-date-opt .d.sub{font-weight:400;color:var(--muted);}
.mce-date-opt .p{color:var(--gold-dark);font-weight:700;font-size:14px;margin-top:3px;}

.mce-toggle-row{display:flex;align-items:center;gap:12px;margin:14px 0;}
.mce-toggle-row .t-label{font-size:14.5px;}
.mce-switch{position:relative;width:46px;height:26px;flex:0 0 auto;display:inline-block;}
.mce-switch input{opacity:0;width:0;height:0;}
.mce-slider{position:absolute;inset:0;background:#cfc9bd;border-radius:30px;transition:.2s;cursor:pointer;}
.mce-slider:before{content:"";position:absolute;height:20px;width:20px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 2px rgba(0,0,0,.2);}
.mce-switch input:checked + .mce-slider{background:var(--gold);}
.mce-switch input:checked + .mce-slider:before{transform:translateX(20px);}
.mce-check{display:flex;gap:11px;align-items:flex-start;margin:14px 0;font-size:14px;cursor:pointer;font-weight:400;}
.mce-check input{margin-top:3px;width:17px;height:17px;accent-color:var(--gold);flex:0 0 auto;}

.mce-nav{display:flex;flex-direction:column;gap:10px;margin-top:24px;}
.mce-btn{width:100%;padding:13px;border-radius:8px;border:1px solid var(--gold);background:transparent;color:var(--ink);font-size:15px;font-weight:600;cursor:pointer;transition:.15s;font-family:inherit;}
.mce-btn:hover{background:var(--gold-soft);}
.mce-btn.primary{background:var(--gold);color:#fff;border-color:var(--gold);}
.mce-btn.primary:hover{background:var(--gold-dark);}
.mce-btn:disabled{opacity:.6;cursor:default;}

.mce-summary{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px;box-shadow:0 1px 3px rgba(0,0,0,.06);position:sticky;top:20px;}
.mce-summary h3{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 14px;}
.mce-sum-prog{font-size:16px;font-weight:700;line-height:1.35;margin-bottom:14px;}
.mce-sum-line{display:flex;justify-content:space-between;gap:12px;font-size:14px;margin:9px 0;}
.mce-sum-line .k{color:var(--muted);}
.mce-sum-line .v{font-weight:600;text-align:right;}
.mce-sum-total{border-top:1px solid var(--line);margin-top:16px;padding-top:14px;display:flex;justify-content:space-between;align-items:baseline;}
.mce-sum-total .k{font-weight:600;}
.mce-sum-total .v{font-size:22px;font-weight:800;color:var(--gold-dark);}
.mce-sum-empty{color:var(--muted);font-size:14px;font-style:italic;}
.mce-trust{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:8px;}
.mce-trust.nb{border-top:none;padding-top:4px;}
.mce-lock{width:15px;height:15px;flex:0 0 auto;}

.mce-rev{border:1px solid var(--line);border-radius:8px;background:var(--field);padding:16px 18px;margin-bottom:14px;}
.mce-rev .rh{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;}
.mce-rev h4{margin:0;font-size:14.5px;}
.mce-edit{background:none;border:none;color:var(--gold-dark);font-size:13px;font-weight:600;cursor:pointer;text-decoration:underline;font-family:inherit;}
.mce-rev-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 22px;font-size:13.5px;}
.mce-rev-grid .k{color:var(--muted);}
.mce-next{background:var(--gold-soft);border:1px solid #e7dcc0;border-radius:8px;padding:16px 18px;margin:18px 0;font-size:14px;}
.mce-next h4{margin:0 0 8px;font-size:14.5px;}
.mce-next ol{margin:0;padding-left:20px;}
.mce-next li{margin:5px 0;}
.mce-policy{font-size:13.5px;color:var(--muted);margin-bottom:4px;}
.mce-notice{margin-top:14px;padding:12px 14px;border-radius:8px;background:#fff8e8;border:1px solid #ecdca6;color:#7a6520;font-size:13.5px;}

@media(max-width:880px){
  .mce-grid{grid-template-columns:1fr;}
  .mce-summary{position:static;order:-1;margin-bottom:8px;}
  .mce-dates{grid-template-columns:1fr;}
  .mce-row{grid-template-columns:1fr;}
  .mce-lbl{display:none;}
  .mce-rev-grid{grid-template-columns:1fr;}
}

/* --- v1.3.0 additions --- */
.mce-reg .mce-hr{border:none;border-top:1px solid var(--line);margin:22px 0 6px;}
.mce-date-opt .pr{margin-top:3px;}
.mce-date-opt .pr .p{color:var(--gold-dark);font-weight:700;font-size:14px;}
.mce-date-opt .pr .orig{text-decoration:line-through;color:#999;font-size:12.5px;margin-right:4px;}
.mce-eb{display:inline-block;background:var(--gold);color:#fff;font-size:10.5px;font-weight:700;
  padding:1px 6px;border-radius:10px;vertical-align:middle;letter-spacing:.02em;}
.mce-sum-line .mce-eb{font-size:9.5px;}

.mce-part-block,.mce-cc-row,.mce-invoice{border:1px solid var(--line);border-radius:8px;background:var(--field);
  padding:14px 16px;margin:14px 0;}
.mce-part-block .rh,.mce-cc-row .rh{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
.mce-part-block h4,.mce-cc-row h4,.mce-invoice h4{margin:0 0 6px;font-size:14.5px;}
.mce-remove{background:none;border:none;color:var(--err);font-size:12.5px;font-weight:600;cursor:pointer;text-decoration:underline;font-family:inherit;}
.mce-add{background:transparent;border:1px dashed var(--gold);color:var(--gold-dark);font-weight:600;
  padding:9px 14px;border-radius:7px;cursor:pointer;font-family:inherit;font-size:14px;margin-top:4px;}
.mce-add:hover{background:var(--gold-soft);}

.mce-pay-h{margin:18px 0 8px;font-size:15px;}
.mce-pay{display:flex;gap:11px;align-items:flex-start;border:1px solid var(--line);border-radius:8px;
  background:var(--field);padding:13px 15px;margin:10px 0;cursor:pointer;font-size:14px;font-weight:400;}
.mce-pay.sel{border-color:var(--gold);background:var(--gold-soft);}
.mce-pay input{margin-top:3px;width:17px;height:17px;accent-color:var(--gold);flex:0 0 auto;}
.mce-pay-desc{color:var(--muted);font-size:13px;}
.mce-pay-err .mce-msg{margin-top:0;}
.mce-field-err .mce-msg{display:block;}

/* --- v1.4.4: emphasise online, de-emphasise bank transfer --- */
.mce-pay.rec{border-color:var(--gold);background:var(--gold-soft);}
.mce-rec-badge{display:inline-block;background:var(--gold);color:#fff;font-size:10px;font-weight:700;
  padding:1px 7px;border-radius:10px;margin-left:7px;vertical-align:middle;letter-spacing:.02em;text-transform:uppercase;}
.mce-pay.muted{padding:8px 13px;margin-top:6px;border-color:#e7e2d8;background:transparent;opacity:.75;}
.mce-pay.muted:hover{opacity:1;}
.mce-pay.muted b{font-weight:600;font-size:13px;color:var(--muted);}
.mce-pay.muted .mce-pay-desc{font-size:11.5px;}
.mce-pay.muted input{transform:scale(.9);}
.mce-pay.muted.sel{opacity:1;border-color:var(--gold);background:var(--gold-soft);}
.mce-pay.muted.sel b{color:var(--ink);}

/* --- v1.4.5: keep the form a readable width inside full-width sections --- */
.mce-reg{max-width:1180px;margin-left:auto;margin-right:auto;}

/* --- v1.5.1: harden buttons against theme/Elementor overrides --- */
.mce-reg button.mce-btn,
.mce-reg .mce-btn{
  -webkit-appearance:none!important;appearance:none!important;
  display:block!important;width:100%!important;min-width:0!important;height:auto!important;
  box-sizing:border-box!important;margin:0!important;padding:13px!important;
  border:1px solid var(--gold)!important;border-radius:8px!important;
  background:transparent!important;color:var(--ink)!important;
  font-family:inherit!important;font-size:15px!important;font-weight:600!important;
  line-height:1.4!important;text-transform:none!important;letter-spacing:normal!important;
  text-indent:0!important;text-shadow:none!important;text-decoration:none!important;cursor:pointer!important;
}
.mce-reg button.mce-btn.primary,
.mce-reg .mce-btn.primary{background:var(--gold)!important;color:#fff!important;border-color:var(--gold)!important;}
.mce-reg .mce-btn:hover{background:var(--gold-soft)!important;}
.mce-reg .mce-btn.primary:hover{background:var(--gold-dark)!important;}

.mce-reg button.mce-edit,
.mce-reg .mce-edit{
  -webkit-appearance:none!important;appearance:none!important;
  display:inline!important;width:auto!important;min-width:0!important;height:auto!important;
  margin:0!important;padding:0!important;border:none!important;background:none!important;box-shadow:none!important;
  color:var(--gold-dark)!important;font-family:inherit!important;font-size:13px!important;font-weight:600!important;
  line-height:1.4!important;text-transform:none!important;letter-spacing:normal!important;
  text-indent:0!important;text-shadow:none!important;text-decoration:underline!important;cursor:pointer!important;
}
.mce-reg button.mce-add,
.mce-reg .mce-add{
  -webkit-appearance:none!important;appearance:none!important;width:auto!important;min-width:0!important;height:auto!important;
  margin-top:4px!important;padding:9px 14px!important;border:1px dashed var(--gold)!important;border-radius:7px!important;
  background:transparent!important;color:var(--gold-dark)!important;font-family:inherit!important;font-size:14px!important;
  font-weight:600!important;text-transform:none!important;text-indent:0!important;text-decoration:none!important;cursor:pointer!important;
}
.mce-reg button.mce-remove,
.mce-reg .mce-remove{
  -webkit-appearance:none!important;appearance:none!important;width:auto!important;min-width:0!important;height:auto!important;
  margin:0!important;padding:0!important;border:none!important;background:none!important;box-shadow:none!important;
  color:var(--err)!important;font-family:inherit!important;font-size:12.5px!important;font-weight:600!important;
  text-transform:none!important;text-indent:0!important;text-decoration:underline!important;cursor:pointer!important;
}

/* --- v1.6.0: spacing around checkboxes / payment options --- */
.mce-reg .mce-check{margin:16px 0;line-height:1.45;}
.mce-reg .mce-check + .mce-check{margin-top:18px;}
.mce-reg .mce-pay{margin:12px 0;}
.mce-reg .mce-pay-h{margin-top:24px;}
.mce-reg .mce-pay-err{margin:6px 0 10px;}
.mce-reg .mce-trust.nb{margin-top:14px;}

/* --- v1.6.2: force clear spacing around checkboxes & payment options --- */
.mce-reg .mce-pay-h{margin:28px 0 12px !important;}
.mce-reg .mce-pay{margin:14px 0 !important;}
.mce-reg .mce-pay + .mce-pay{margin-top:14px !important;}
.mce-reg .mce-pay-err{margin:10px 0 !important;}
.mce-reg .mce-check{margin:24px 0 !important;line-height:1.55 !important;}
.mce-reg .mce-check + .mce-check{margin-top:24px !important;}
.mce-reg .mce-check span{line-height:1.55 !important;}
.mce-reg .mce-trust.nb{margin-top:26px !important;padding-top:14px !important;border-top:1px solid var(--line) !important;}
