/* RBCL public design correction, 2026-11-13. Loaded after existing theme. */
:root { --rbcl-blue:#092b86; --rbcl-red:#ef174f; --rbcl-navy:#071638; }
/* Never put red text on a red badge. Applies to all public page banners. */
.front-body .hero .eyebrow, .front-body .page-hero .eyebrow,
.front-body .hero .eyebrow.dark, .front-body .page-hero .eyebrow.dark {
 color:#fff!important; background:#c70f40!important; border:1px solid rgba(255,255,255,.35)!important;
 text-shadow:none!important; box-shadow:0 8px 24px rgba(5,13,39,.16);
 letter-spacing:.07em; font-weight:850; padding:10px 15px; line-height:1.4;
 max-width:100%; white-space:normal; overflow-wrap:anywhere;
}
/* Inner-page banners use a clean branded gradient, not the unrelated stock image. */
.front-body .page-hero { background:#071638!important;
 background-image:linear-gradient(110deg,#071638 0%,#092b86 65%,#1747a5 100%)!important;
 color:#fff!important; position:relative; isolation:isolate; }
.front-body .page-hero::before {content:'';position:absolute;inset:0;pointer-events:none;
 background:radial-gradient(circle at 85% 25%,rgba(255,255,255,.10),transparent 35%);z-index:-1;}
.front-body .page-hero h1,.front-body .page-hero p,.front-body .page-hero .breadcrumb {
 color:#fff!important; text-shadow:none!important; }
.front-body .page-hero p {opacity:.94;max-width:850px;}
/* Home keeps the actual stadium image already configured in the CMS. */
.front-body .hero {background:#071638!important;}
.front-body .hero::after {background:linear-gradient(90deg,rgba(3,14,40,.86) 0%,rgba(5,23,57,.68) 55%,rgba(5,23,57,.35) 100%)!important;}
.front-body .hero h1,.front-body .hero .cms-inline-content,.front-body .hero .cms-inline-content p {color:#fff!important;}
/* Matching registration cards on home and dedicated registration page. */
.front-body .form-panel.compact-registration {background:#fff!important;border:1px solid #dce5f5!important;
 border-radius:16px!important;box-shadow:0 20px 48px rgba(7,22,56,.12)!important;overflow:hidden;}
.front-body .compact-registration .form-panel__head {background:linear-gradient(105deg,#071638 0%,#092b86 70%,#c91448 100%)!important;
 border-bottom:3px solid #ef174f!important;padding:20px 22px!important;}
.front-body .compact-registration .form-panel__head h2,.front-body .compact-registration .form-panel__head p {color:#fff!important;}
.front-body .compact-registration .form-grid {background:#fff!important;gap:12px!important;padding:20px!important;}
.front-body .compact-registration .field input,.front-body .compact-registration .field select {
 background:#f8faff!important;color:#071638!important;border:1px solid #d8e2f2!important;
 border-radius:9px!important;min-height:47px!important;font-size:14px!important;}
.front-body .compact-registration .field input:focus,.front-body .compact-registration .field select:focus {
 border-color:#092b86!important;box-shadow:0 0 0 3px rgba(9,43,134,.12)!important;outline:none!important;}
.front-body .compact-registration .terms {color:#34435c!important;font-size:13px!important;line-height:1.5;}
.front-body .compact-registration .form-actions .btn-primary {background:#ef174f!important;border-color:#ef174f!important;color:#fff!important;}
.front-body .compact-registration .form-actions .btn-primary:hover {background:#c70f40!important;}
/* Any older fee row still rendered by cached templates must not be shown publicly. */
.front-body .compact-registration .fee-card {display:none!important;}
@media(max-width:640px){
 .front-body .hero .eyebrow,.front-body .page-hero .eyebrow {font-size:10px!important;padding:8px 10px!important;}
 .front-body .page-hero {padding:48px 0!important;}
 .front-body .compact-registration .form-grid {padding:14px!important;gap:10px!important;}
 .front-body .compact-registration .form-panel__head {padding:17px!important;}
 .front-body .compact-registration .field input,.front-body .compact-registration .field select {font-size:13px!important;}
}

/* Review-only fee: hidden from compact forms, prominent inside the modal. */
.front-body .rbcl-review-dialog {border:0;border-radius:20px;max-width:570px;width:min(94vw,570px);max-height:90vh;padding:0;box-shadow:0 25px 80px #07163866;}
.front-body .rbcl-review-dialog::backdrop {background:rgba(5,14,35,.75);}
.front-body .rbcl-review-inner {padding:24px;overflow:auto;max-height:90vh;}
.front-body .rbcl-review-dialog .rbcl-review-fee {display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;border-radius:12px;background:#edf3ff;border:1px solid #cbd9fa;color:#071638;font-weight:700;}
.front-body .rbcl-review-dialog .rbcl-review-fee strong {font-size:21px;color:#092b86;}
.front-body .rbcl-review-dialog .rbcl-review-fee-note {font-size:12px;color:#59667e;margin:8px 0 14px;}
.front-body .rbcl-review-dialog #rbclReviewError {color:#b91c1c;font-size:13px;}
.front-body .rbcl-review-dialog #rbclReviewConfirm:disabled {opacity:.55;cursor:not-allowed;}
@media(max-width:640px){.front-body .rbcl-review-inner{padding:17px}.front-body .rbcl-review-dialog .rbcl-review-fee strong{font-size:18px}}
