.tr-reg-wrap{
  --tr-forest:#163B26; --tr-gold:#D5A851; --tr-light:#E6F5E3; --tr-offwhite:#F5F5F5;
  --tr-ink:#163B26; --tr-soft:rgba(22,59,38,.62); --tr-line:rgba(22,59,38,.18);
  --tr-error:#DC2626; --tr-error-lt:#FEF2F2;
  max-width:760px;margin:0 auto;color:var(--tr-ink);
}
.tr-reg-alert{ background:var(--tr-error-lt);border:1px solid var(--tr-error);color:#8A1F2C;padding:14px 18px;border-radius:5px;margin-bottom:20px;font-weight:600;font-size:14px; }
.tr-reg-progressbar{ height:6px;background:var(--tr-line);border-radius:5px;overflow:hidden;margin-bottom:18px; }
.tr-reg-progressbar__fill{ height:100%;background:var(--tr-gold);width:12.5%;transition:width .35s ease; }
.tr-reg-steps-row{ display:flex;justify-content:space-between;margin-bottom:28px;gap:4px;overflow-x:auto; }
.tr-reg-step-chip{ display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;min-width:56px; }
.tr-reg-step-chip__num{ width:28px;height:28px;border-radius:5px;background:var(--tr-light);color:var(--tr-soft);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;transition:all .2s ease; }
.tr-reg-step-chip.is-active .tr-reg-step-chip__num{ background:var(--tr-gold);color:#fff; }
.tr-reg-step-chip.is-done .tr-reg-step-chip__num{ background:var(--tr-forest);color:#fff; }
.tr-reg-step-chip__label{ font-size:9px;font-weight:700;text-transform:uppercase;color:var(--tr-soft);letter-spacing:.03em; }
.tr-reg-step-chip.is-active .tr-reg-step-chip__label{ color:var(--tr-forest); }

.tr-reg-step-title{ font-size:20px;font-weight:700;color:var(--tr-forest);margin:0 0 4px; }
.tr-reg-step-sub{ color:var(--tr-soft);font-size:14px;margin:0 0 22px; }

.tr-reg-field{ margin-bottom:18px; }
.tr-reg-field label{ display:block;font-weight:700;font-size:14px;color:var(--tr-ink);margin-bottom:6px; }
.tr-reg-field input[type=text],.tr-reg-field input[type=email],.tr-reg-field input[type=tel],
.tr-reg-field input[type=date],.tr-reg-field select,.tr-reg-field textarea{
  width:100%;padding:12px 14px;border:1.5px solid var(--tr-line);border-radius:5px;font-size:15px;color:var(--tr-ink);background:#fff;font-family:inherit;
}
.tr-reg-field textarea{ resize:vertical; }
.tr-reg-field input:focus,.tr-reg-field select:focus,.tr-reg-field textarea:focus{ outline:none;border-color:var(--tr-gold);box-shadow:0 0 0 3px rgba(213,168,81,.25); }
.tr-reg-hint{ font-size:12.5px;color:var(--tr-soft);margin:4px 0 0; }
.tr-reg-grid-2{ display:grid;grid-template-columns:1fr 1fr;gap:16px; }
@media (max-width:600px){ .tr-reg-grid-2{ grid-template-columns:1fr; } }

.tr-reg-programme-grid{ display:grid;grid-template-columns:1fr 1fr;gap:12px; }
@media (max-width:600px){ .tr-reg-programme-grid{ grid-template-columns:1fr; } }
.tr-reg-programme-card{ position:relative;display:flex;flex-direction:column;gap:6px;padding:16px;border:2px solid var(--tr-line);border-radius:5px;cursor:pointer;background:#fff;transition:all .15s ease; }
.tr-reg-programme-card input{ position:absolute;opacity:0; }
.tr-reg-programme-card:has(input:checked){ border-color:var(--tr-forest);background:var(--tr-light); }
.tr-reg-programme-card__top{ display:flex;justify-content:space-between;align-items:center;gap:8px; }
.tr-reg-programme-card__title{ font-weight:700;font-size:14px; }
.tr-reg-programme-card__tag{ font-size:10px;font-weight:700;text-transform:uppercase;color:var(--tr-gold);background:var(--tr-forest);padding:2px 8px;border-radius:5px;flex-shrink:0; }
.tr-reg-programme-card__hint{ font-size:12px;color:var(--tr-soft);line-height:1.4; }

.tr-reg-toggle-row{ display:grid;grid-template-columns:1fr 1fr;gap:14px; }
@media (max-width:600px){ .tr-reg-toggle-row{ grid-template-columns:1fr; } }
.tr-reg-toggle-card{ position:relative;display:flex;flex-direction:column;gap:4px;padding:16px;border:2px solid var(--tr-line);border-radius:5px;cursor:pointer;background:#fff;transition:all .15s ease; }
.tr-reg-toggle-card input{ position:absolute;opacity:0;width:0;height:0; }
.tr-reg-toggle-card:has(input:checked){ border-color:var(--tr-forest);background:var(--tr-light); }
.tr-reg-toggle-card__title{ font-weight:700;font-size:15px; }
.tr-reg-toggle-card__sub{ font-size:12.5px;color:var(--tr-soft); }

.tr-reg-track-list{ display:flex;flex-direction:column;gap:10px; }
.tr-reg-track-option{ padding:14px 16px;border:1.5px solid var(--tr-line);border-radius:5px;cursor:pointer;background:#fff; }
.tr-reg-track-option.is-selected{ border-color:var(--tr-forest);background:var(--tr-light); }
.tr-reg-track-option__title{ font-size:14px;font-weight:700;color:var(--tr-ink); }
.tr-reg-track-option__desc{ font-size:12.5px;color:var(--tr-soft);margin-top:4px;line-height:1.5; }

.tr-reg-pill-row{ display:flex;flex-wrap:wrap;gap:8px; }
.tr-reg-pill{ position:relative; }
.tr-reg-pill input{ position:absolute;opacity:0; }
.tr-reg-pill{ padding:8px 16px;border:1.5px solid var(--tr-line);border-radius:5px;background:#fff;font-size:13.5px;cursor:pointer;transition:all .15s ease; }
.tr-reg-pill:has(input:checked){ background:var(--tr-forest);border-color:var(--tr-forest);color:#fff;font-weight:600; }

.tr-reg-check-grid{ display:grid;grid-template-columns:1fr 1fr;gap:8px; }
@media (max-width:600px){ .tr-reg-check-grid{ grid-template-columns:1fr; } }
.tr-reg-checkbox{ display:flex;align-items:center;gap:14px;padding:10px 12px;border:1.5px solid var(--tr-line);border-radius:5px;font-size:13.5px;cursor:pointer;background:#fff; }
.tr-reg-checkbox input{ flex-shrink:0;width:16px;height:16px;margin:0 10px 0 0; }
.tr-reg-checkbox span{ flex:1; }
.tr-reg-checkbox:has(input:checked){ border-color:var(--tr-forest);background:var(--tr-light);font-weight:600; }
.tr-reg-checkbox-inline{ display:flex;align-items:center;gap:8px;font-size:13.5px;cursor:pointer; }

.tr-reg-note{ background:var(--tr-offwhite);border-radius:5px;padding:14px 16px;font-size:13.5px;color:var(--tr-ink);margin:0 0 20px;line-height:1.55; }

.tr-reg-fee-preview{ display:flex;justify-content:space-between;align-items:center;background:var(--tr-forest);color:#fff;padding:16px 20px;border-radius:5px;margin:18px 0; }
.tr-reg-fee-preview__label{ font-weight:600;font-size:13.5px;opacity:.8; }
.tr-reg-fee-preview__amount{ font-weight:800;font-size:18px;color:var(--tr-gold); }

.tr-reg-consent-card{ display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:2px solid var(--tr-line);border-radius:5px;cursor:pointer;margin-bottom:12px;font-size:13.5px;line-height:1.55;background:#fff; }
.tr-reg-consent-card:has(input:checked){ border-color:var(--tr-forest);background:var(--tr-light); }
.tr-reg-consent-card input{ margin-top:3px;flex-shrink:0; }
.tr-reg-consent-card a{ color:var(--tr-forest);font-weight:700; }

.tr-reg-honeypot{ position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden; }

.tr-reg-nav{ display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--tr-line);padding-top:20px;margin-top:12px; }
.tr-reg-btn-back,.tr-reg-btn-next,.tr-reg-btn-submit{ padding:12px 24px;border-radius:5px;font-weight:700;font-size:14px;cursor:pointer;border:none; }
.tr-reg-btn-back{ background:var(--tr-offwhite);border:1.5px solid var(--tr-line);color:var(--tr-ink); }
.tr-reg-btn-back:disabled{ opacity:.3;cursor:default; }
.tr-reg-btn-next,.tr-reg-btn-submit{ background:var(--tr-forest);color:#fff;margin-left:auto; }
.tr-reg-btn-submit{ background:var(--tr-gold);color:var(--tr-forest); }
.tr-reg-remaining{ font-size:12px;color:var(--tr-soft); }

.tr-reg-wrap .tr-reg-step[hidden]{ display:none !important; }
[data-adapt][hidden]{ display:none !important; }
