.registration-page{background:#f4f8f7;color:#092e5a;min-height:100vh}.registration-header{position:static;border-bottom:1px solid #dfe9e7;background:#fff}.registration-header .nav-wrap{min-height:84px}.registration-header .brand img{max-height:58px;width:auto}.registration-home-link{font-weight:700;color:#092e5a;text-decoration:none}.registration-home-link:hover{color:#24866b}.registration-hero{padding:52px 0 90px}.registration-shell{max-width:1180px}.registration-progress{display:flex;align-items:center;justify-content:center;max-width:650px;margin:0 auto 42px}.progress-item{display:flex;align-items:center;gap:10px;color:#8a9baa;font-size:13px;text-transform:uppercase;letter-spacing:.7px}.progress-item span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#dfe8e6;color:#698078;font-weight:800}.progress-item.active,.progress-item.done{color:#092e5a}.progress-item.active span,.progress-item.done span{background:#24866b;color:white}.progress-line{height:2px;background:#dce6e4;flex:1;margin:0 16px}.registration-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:28px;align-items:start}.registration-panel,.order-summary{background:#fff;border:1px solid #e0e9e7;border-radius:24px;box-shadow:0 12px 40px rgba(8,45,84,.07)}.registration-panel{padding:46px}.registration-step{display:none}.registration-step.active{display:block}.registration-panel h1{font:800 46px/1.05 Manrope,sans-serif;letter-spacing:-1.7px;margin:10px 0 15px;color:#062b59}.registration-intro{color:#647786;max-width:650px;font-size:17px;margin:0 0 36px}.registration-form-full h2{font-size:19px;margin:0 0 18px;color:#092e5a}.registration-form-full label{display:flex;flex-direction:column;gap:7px;color:#243f5c;font-size:13px;font-weight:700}.registration-form-full label>span{color:#24866b}.registration-form-full label small{font-weight:500;color:#8b9ca9;margin-left:5px}.registration-form-grid{display:grid;gap:16px;margin-bottom:16px}.registration-form-grid.two-col{grid-template-columns:1fr 1fr}.registration-form-full>label{margin-bottom:16px}.registration-form-full input[type="text"],.registration-form-full input[type="email"],.registration-form-full input[type="tel"]{width:100%;border:1px solid #cfdcda;background:#fbfdfc;border-radius:11px;padding:14px 15px;font:500 15px Manrope,sans-serif;color:#0a2e58;outline:none}.registration-form-full input:focus{border-color:#24866b;box-shadow:0 0 0 3px rgba(36,134,107,.10)}.form-section-divider{height:1px;background:#e5ecea;margin:30px 0}.payer-choice{border:0;padding:0;margin:0 0 20px}.payer-choice legend{font-size:13px;font-weight:700;margin-bottom:10px;color:#243f5c}.radio-card{display:flex!important;flex-direction:row!important;align-items:center;gap:12px!important;border:1px solid #d7e2df;border-radius:12px;padding:14px 16px;margin:0 0 10px!important;cursor:pointer}.radio-card input{accent-color:#24866b}.radio-card span{display:flex;flex-direction:column;color:#092e5a!important}.radio-card small{margin:2px 0 0!important;color:#7c8d98!important}.company-fields{background:#f7faf9;border-radius:14px;padding:20px;margin-bottom:20px}.company-fields label{margin-bottom:16px}.check-row{flex-direction:row!important;align-items:flex-start;gap:10px!important;font-weight:500!important;color:#586e7f!important;margin:0 0 13px!important}.check-row input{margin-top:3px;accent-color:#24866b}.check-row span{color:inherit!important}.check-row a{color:#1f795f}.registration-primary{background:#24866b;color:#fff;border:0;margin-top:18px}.registration-primary:hover{filter:brightness(.95)}.registration-secondary{background:#eef5f3;color:#092e5a;border:0}.order-summary{padding:30px;position:sticky;top:24px}.summary-label{font-size:11px;font-weight:800;letter-spacing:1.5px;color:#24866b}.order-summary h2{font-size:26px;margin:8px 0 2px}.order-summary>p{font-size:12px;font-weight:800;letter-spacing:1px;color:#768996;margin:0 0 22px}.order-summary ul{list-style:none;padding:0;margin:0 0 22px}.order-summary li{font-size:13px;color:#596e7c;padding:8px 0 8px 20px;position:relative;border-bottom:1px solid #edf1f0}.order-summary li:before{content:'✓';position:absolute;left:0;color:#24866b;font-weight:800}.summary-event{display:flex;flex-direction:column;gap:5px;padding:18px 0;border-top:1px solid #e7edeb;border-bottom:1px solid #e7edeb;font-size:13px;color:#5d7180}.summary-price-row{display:flex;justify-content:space-between;align-items:end;padding:22px 0 10px}.summary-price-row span{font-size:13px;color:#647785}.summary-price-row strong{font-size:30px;color:#24866b}.change-package{background:none;border:0;color:#557080;text-decoration:underline;font:600 12px Manrope,sans-serif;padding:0;cursor:pointer}.payment-method-card{display:flex;align-items:center;gap:13px;border:2px solid #24866b;background:#f7fbf9;border-radius:15px;padding:17px;margin-bottom:20px}.payment-method-icon{width:42px;height:42px;border-radius:12px;background:#24866b;color:#fff;display:grid;place-items:center;font-size:22px}.payment-method-card>div:nth-child(2){display:flex;flex-direction:column;flex:1}.payment-method-card span{font-size:12px;color:#698077}.recommended-pill{font-size:9px!important;letter-spacing:.8px!important;font-weight:800;color:#24866b!important;background:#e0f1eb;border-radius:20px;padding:6px 9px}.bank-details-card{border:1px solid #dce5e3;border-radius:15px;overflow:hidden;margin-bottom:20px}.bank-detail-row{display:grid;grid-template-columns:155px 1fr;gap:20px;padding:14px 17px;border-bottom:1px solid #e7edeb}.bank-detail-row:last-child{border-bottom:0}.bank-detail-row span{font-size:12px;color:#70828e}.bank-detail-row strong{font-size:13px;word-break:break-word}.qr-payment-card{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:center;background:#f5f8f7;border-radius:15px;padding:20px;margin-bottom:20px}.qr-placeholder{aspect-ratio:1;border:2px dashed #9eb7b0;border-radius:12px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:12px;color:#24866b;font-weight:800}.qr-placeholder small{font-weight:500;color:#879991;font-size:9px;margin-top:7px}.qr-payment-card h3{font-size:16px;margin:0 0 6px}.qr-payment-card p{font-size:13px;line-height:1.55;color:#6a7c87;margin:0}.reservation-notice{border-left:4px solid #24866b;background:#edf6f3;padding:16px 18px;border-radius:0 12px 12px 0}.reservation-notice p{font-size:13px;color:#5a706e;margin:4px 0 0}.payment-actions{display:flex;gap:10px;margin-top:22px}.payment-actions .btn{margin-top:0}.payment-footnote{font-size:11px;color:#87959e;margin-top:13px}.confirmation-check{width:66px;height:66px;border-radius:50%;display:grid;place-items:center;background:#24866b;color:#fff;font-size:32px;font-weight:800;margin-bottom:25px}.confirmation-summary{border:1px solid #dce5e3;border-radius:15px;margin:25px 0;overflow:hidden}.confirmation-summary>div{display:flex;justify-content:space-between;gap:20px;padding:15px 18px;border-bottom:1px solid #e7edeb}.confirmation-summary>div:last-child{border-bottom:0}.confirmation-summary span{font-size:13px;color:#6a7b87}.confirmation-summary strong{font-size:13px}.confirmation-message{background:#edf6f3;color:#4d6964;padding:18px;border-radius:13px;font-size:14px;line-height:1.55;margin-bottom:18px}#stepConfirmation .btn{display:inline-flex;margin-right:8px;margin-top:0}@media(max-width:900px){.registration-layout{grid-template-columns:1fr}.order-summary{position:static;order:-1}.registration-panel{padding:34px}.registration-panel h1{font-size:38px}}@media(max-width:620px){.registration-hero{padding-top:30px}.registration-progress{margin-bottom:28px}.progress-item strong{display:none}.progress-line{margin:0 8px}.registration-panel,.order-summary{border-radius:18px}.registration-panel{padding:26px 20px}.registration-panel h1{font-size:32px}.registration-form-grid.two-col{grid-template-columns:1fr}.bank-detail-row{grid-template-columns:1fr;gap:4px}.qr-payment-card{grid-template-columns:1fr}.qr-placeholder{width:145px}.payment-actions{flex-direction:column}.payment-actions .btn{justify-content:center}.registration-header .brand img{max-width:170px}.registration-home-link{font-size:12px}}

.registration-header{background:rgb(253,253,253)!important;}


/* V45 — registration/payment header logo matches main website */
.registration-header{
  background:rgb(253,253,253) !important;
}
.registration-header .brand{
  height:92px !important;
  display:flex;
  align-items:center;
}
.registration-header .brand-logo,
.registration-header img{
  height:86px !important;
  width:auto !important;
  max-height:none !important;
  object-fit:contain;
  display:block;
  background:rgb(253,253,253) !important;
}
@media(max-width:800px){
  .registration-header .brand{height:78px !important;}
  .registration-header .brand-logo,
  .registration-header img{height:72px !important;}
}


/* V49 — Card payment + Bank transfer; UPN QR removed */
.payment-methods-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:22px}
.payment-method-option{appearance:none;width:100%;border:1px solid #d5e1de;background:#fff;border-radius:15px;padding:17px;display:flex;align-items:center;gap:13px;text-align:left;color:#092e5a;font:inherit;cursor:pointer;transition:.18s ease}
.payment-method-option:hover{border-color:#7fb8a7;background:#fbfdfc}
.payment-method-option.selected{border:2px solid #24866b;background:#f4faf7;box-shadow:0 0 0 3px rgba(36,134,107,.07)}
.payment-method-option-icon{width:42px;height:42px;flex:0 0 42px;border-radius:12px;display:grid;place-items:center;background:#edf5f2;color:#24866b;font-size:21px;font-weight:800}
.payment-method-option.selected .payment-method-option-icon{background:#24866b;color:#fff}
.payment-method-option-copy{display:flex;flex-direction:column;flex:1;gap:3px}
.payment-method-option-copy strong{font-size:14px}.payment-method-option-copy small{font-size:11px;line-height:1.35;color:#72858f}
.payment-method-check{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#24866b;color:#fff;font-size:12px;font-weight:800;opacity:0}
.payment-method-option.selected .payment-method-check{opacity:1}
.payment-method-panel{display:none}.payment-method-panel.active{display:block}
.card-payment-box{border:1px solid #dce5e3;background:#fff;border-radius:16px;padding:24px}
.secure-payment-heading{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px}
.secure-payment-lock{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;border-radius:12px;background:#edf6f3;font-size:20px}
.secure-payment-heading h3{margin:0 0 5px;font-size:17px}.secure-payment-heading p{margin:0;color:#6c7f8a;font-size:13px;line-height:1.5}
.accepted-payments{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}.accepted-payments span{border:1px solid #dce5e3;background:#fafcfc;border-radius:8px;padding:8px 10px;font-size:11px;font-weight:800;color:#344f68}
.card-payment-total{display:flex;justify-content:space-between;align-items:end;padding:18px 0;border-top:1px solid #e6edeb;border-bottom:1px solid #e6edeb;margin-bottom:18px}
.card-payment-total span{font-size:13px;color:#687b87}.card-payment-total strong{font-size:28px;color:#24866b}
.card-checkout-button{width:100%;justify-content:center;margin-top:0}
.card-payment-status{margin:12px 0 0;padding:11px 12px;background:#fff4df;color:#765923;border-radius:10px;font-size:12px}
.secure-payment-note{margin:12px 0 0;text-align:center;color:#8a989f;font-size:10px;line-height:1.45}
#bankTransferPanel .bank-details-card{margin-bottom:20px}
@media(max-width:620px){.payment-methods-grid{grid-template-columns:1fr}}

/* V84 — registration form visual refinement */
.registration-form-full h2{
  font-size:21px;
  margin:0 0 22px;
  color:#062b59;
  letter-spacing:-.2px;
}
.registration-form-grid{
  gap:20px;
  margin-bottom:20px;
}
.registration-form-full > label{
  margin-bottom:20px;
}
.registration-form-full label:not(.radio-card):not(.check-row){
  display:block;
  color:#173b5c;
  font-size:14px;
  font-weight:700;
  line-height:1.35;
}
.registration-form-full label:not(.radio-card):not(.check-row) > span[id]{
  color:#173b5c;
}
.registration-form-full label:not(.radio-card):not(.check-row) > span:not([id]){
  color:#24866b;
  margin-left:3px;
  font-weight:800;
}
.registration-form-full label:not(.radio-card):not(.check-row) > small{
  display:inline;
  margin-left:7px;
  color:#8999a4;
  font-size:11px;
  font-weight:600;
}
.registration-form-full input[type="text"],
.registration-form-full input[type="email"],
.registration-form-full input[type="tel"]{
  display:block;
  width:100%;
  min-height:52px;
  margin-top:9px;
  border:1px solid #ccd9d7;
  background:#fff;
  border-radius:12px;
  padding:13px 15px;
  font:500 15px Manrope,sans-serif;
  color:#0a2e58;
  outline:none;
  transition:border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.registration-form-full input[type="text"]:hover,
.registration-form-full input[type="email"]:hover,
.registration-form-full input[type="tel"]:hover{
  border-color:#abc6bf;
}
.registration-form-full input:focus{
  border-color:#24866b;
  background:#fff;
  box-shadow:0 0 0 3px rgba(36,134,107,.10);
}
.form-section-divider{
  margin:34px 0;
}
.company-fields{
  margin-top:18px;
  padding:22px;
  border:1px solid #e3ece9;
  background:#f8fbfa;
}
.company-fields label{
  margin-bottom:20px;
}
.company-fields .registration-form-grid{
  margin-bottom:0;
}
.registration-panel{
  padding:44px 48px 48px;
}
@media(max-width:900px){
  .registration-panel{padding:36px;}
}
@media(max-width:620px){
  .registration-form-grid{gap:16px;margin-bottom:16px;}
  .registration-form-full > label{margin-bottom:16px;}
  .registration-panel{padding:28px 22px;}
}

/* Ensure consent rows disappear completely when disabled in UREDI.html. */
#registrationTermsRow[hidden],
#registrationMarketingRow[hidden] {
  display: none !important;
}

/* Confirmation page: center thank-you panel and hide package summary */
.registration-layout.confirmation-mode{grid-template-columns:minmax(0,900px);justify-content:center;}
.registration-layout.confirmation-mode .order-summary{display:none!important;}
.registration-layout.confirmation-mode .registration-panel{width:100%;}
