.r2-calendar-help{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px 25px;width:100%;max-width:1100px;margin:22px auto;padding:22px 24px;border:1px solid #654047;border-left:3px solid #e44650;border-radius:12px;background:#191417;color:#f5f5f7;font-family:inherit;text-align:left}
.r2-calendar-help>div{flex:1 1 340px;min-width:0}
.r2-calendar-help strong{display:block;font-size:17px;line-height:1.45;font-weight:700;color:#fff}
.r2-calendar-help p,.r2-stage .r2-calendar-help p,.r2-checkout .r2-calendar-help p{font-size:14px;line-height:1.7;color:#d5cdd0;margin:8px 0 0}
.r2-calendar-help a,.r2-stage .r2-calendar-help a{display:inline-flex;align-items:center;justify-content:center;gap:9px;box-sizing:border-box;flex:0 1 auto;min-height:48px;padding:13px 18px;border:1px solid #e44650;border-radius:8px;background:#c82f3c;color:#fff!important;font:inherit;font-size:14px;font-weight:700;line-height:1.4;text-decoration:none;white-space:normal;text-align:center}
.r2-calendar-help a:hover{background:#ab2330;border-color:#f17780}
.r2-calendar-help a:focus-visible{outline:3px solid #fff;outline-offset:4px}
.r2-mental-calendar .r2-calendar-help{margin:18px 0 24px;padding:20px;gap:15px}
@media(max-width:600px){.r2-calendar-help{padding:19px 18px;gap:16px;margin:18px 0}.r2-calendar-help>div{flex-basis:100%}.r2-calendar-help strong{font-size:16px}.r2-calendar-help a,.r2-stage .r2-calendar-help a{width:100%;flex-basis:100%;font-size:14px}.r2-mental-calendar .r2-calendar-help{padding:17px}}

.r2-stage .r2-booking-offer .r2-jump-links a[href="#r2ride-fastlane"]{min-height:52px;padding:13px 20px;border-color:#d34b58;background:#28181d;color:#fff;font-weight:700}
.r2-stage .r2-booking-offer .r2-jump-links a[href="#r2ride-fastlane"]:hover{background:#3d1e26;border-color:#ff8d98}
.r2-fastlane-live{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);gap:30px;align-items:center;width:100%;max-width:1100px;margin:24px auto 40px;padding:32px;border:1px solid #76434b;border-top:3px solid #e44650;border-radius:16px;background:#1b1519;color:#fff;font-family:inherit;scroll-margin-top:110px;text-align:left}
.r2-stage .r2-fastlane-live .r2-fastlane-eyebrow{margin:0 0 12px;font-size:11px;line-height:1.6;letter-spacing:.14em;color:#ffacb3;font-weight:700}
.r2-stage .r2-fastlane-live h2{font-size:clamp(25px,3vw,33px);line-height:1.2;letter-spacing:-.025em;color:#fff;margin:0 0 15px}
.r2-stage .r2-fastlane-live p{margin:0;color:#e0d4da;font-size:15px;line-height:1.75}
.r2-stage .r2-fastlane-live a{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:16px 20px;border:1px solid #ee6a76;border-radius:9px;background:#c82f3c;color:#fff;text-decoration:none;text-align:center;font-size:16px;font-weight:700;line-height:1.45}
.r2-stage .r2-fastlane-live a:hover{background:#a92330}
.r2-stage .r2-fastlane-live a:focus-visible,.r2-stage a[href="#r2ride-fastlane"]:focus-visible{outline:3px solid #fff;outline-offset:4px}
.r2-stage .r2-fastlane-live .r2-fastlane-action p{margin:12px 0 0;color:#d1bfc7;font-size:12px;line-height:1.65}
@media(max-width:760px){.r2-fastlane-live{grid-template-columns:minmax(0,1fr);gap:23px;padding:24px 20px;margin:22px 0 30px}.r2-stage .r2-fastlane-live a{width:100%;font-size:15px}.r2-stage .r2-fastlane-live p{font-size:14px}.r2-stage .r2-booking-offer .r2-jump-links a[href="#r2ride-fastlane"]{width:100%}}

/* This file is loaded only on the two calendar routes. The standalone mental
   calendar shares the training calendar palette; checkout/payment pages do not. */
body.r2-live-page{margin:0;background:#09090b;color:#f5f5f7;font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:dark}
.r2-live-page *{box-sizing:border-box}
.r2-live-page .r2-live-header{border-bottom:1px solid #303036;background:#09090b}
.r2-live-page .r2-live-main h1{color:#f5f5f7;letter-spacing:-.035em}
.r2-live-page .r2-live-eyebrow{color:#ff7980}
.r2-live-page .r2-live-main .r2-mental-calendar{background:#131316;border:1px solid #3d3d46;border-radius:20px;box-shadow:none}
.r2-live-page .r2-mental-calendar>h2{font-size:28px;line-height:1.2;letter-spacing:-.035em;margin:0 0 16px}
.r2-live-page .r2-form-card p,.r2-live-page .r2-form-card label,.r2-live-page .r2-form-card .r2-muted{color:#c7c7d0}
.r2-live-page .r2-form-card h2,.r2-live-page .r2-form-card h3{color:#f5f5f7}
.r2-live-page .r2-mental-calendar>p{font-size:14px;line-height:1.7}
.r2-live-page .r2-mental-month-nav #r2-mental-month-caption{font-size:23px;line-height:1.25;letter-spacing:-.035em;margin:0}
.r2-live-page .r2-mental-month-nav button{background:transparent;border:1px solid #3d3d46;color:#f5f5f7;padding:0;font-size:20px;min-height:44px}
.r2-live-page .r2-mental-month-nav button:hover:not(:disabled){background:#24242a;border-color:#9898a2}
.r2-live-page .r2-mental-calendar-actions button{min-height:44px;padding:11px 14px;background:#1c1c20;border:1px solid #55555f;color:#f5f5f7;font-size:13px;line-height:1.45}
.r2-live-page .r2-mental-calendar-actions button:first-child{border-color:#a94650;background:#2b171b;color:#ffb3b8}
.r2-live-page .r2-mental-calendar-actions button:hover:not(:disabled){border-color:#ff7980}
.r2-live-page .r2-mental-loading strong{color:#fff;font-size:15px}
.r2-live-page .r2-mental-loading p{color:#edcdd2;font-size:13px;line-height:1.6}
.r2-live-page .r2-mental-weekdays{color:#b6b6c1}
.r2-live-page .r2-live-main .r2-mental-days button{background:transparent;border:1px solid transparent;border-radius:11px;color:#92929d;opacity:1;padding:7px 1px;min-height:65px;font-size:16px}
.r2-live-page .r2-live-main .r2-mental-days button.available{background:transparent;color:#f5f5f7}
.r2-live-page .r2-live-main .r2-mental-days button.available strong{background:#fff;color:#121214}
.r2-live-page .r2-live-main .r2-mental-days button[aria-pressed=true]{background:transparent;color:#f5f5f7}
.r2-live-page .r2-live-main .r2-mental-days button[aria-pressed=true] strong{background:#fff;color:#121214;outline:3px solid #f13940;outline-offset:3px}
.r2-live-page .r2-mental-calendar .r2-mental-legend{color:#c7c7d0}
.r2-live-page .r2-mental-times button{min-height:48px;background:#141416;border:1px solid #55555f;color:#f5f5f7;font-size:14px;padding:12px 8px}
.r2-live-page .r2-live-main .r2-mental-times button[aria-pressed=true]{background:#31181d;border-color:#f13940;color:#fff;box-shadow:inset 0 0 0 1px #f1394040}
.r2-live-page .r2-mental-calendar #r2-shop-price{background:#1c1c20;color:#f5f5f7;border:1px solid #303036}
.r2-live-page .r2-mental-calendar #r2-shop-reserve .r2-button{min-height:48px;background:#c82f3c;color:#fff;font-size:15px}
.r2-live-page .r2-form-card .r2-mental-error{color:#ffb5bd}
.r2-live-page .r2-form-card .r2-calendar-help p{color:#d5cdd0}
.r2-live-page .r2-live-help{color:#b6b6c1}
.r2-live-page .r2-live-help a{color:#ffadb3}
.r2-live-page #r2-live-status:not(:empty){background:#25171b;color:#f5f5f7}
.r2-live-page button:focus-visible,.r2-live-page select:focus-visible,.r2-live-page a:focus-visible{outline:3px solid #ff8d90;outline-offset:4px}
.r2-live-page .r2-mental-calendar button:disabled{cursor:default}
.r2-live-page .r2-mental-calendar form button:disabled{opacity:.6}
@media(max-width:760px){.r2-live-page .r2-mental-month-nav #r2-mental-month-caption{text-align:center;font-size:22px}.r2-live-page .r2-live-main .r2-mental-days button{min-height:54px;padding:7px 0}.r2-live-page .r2-mental-calendar>h2{font-size:25px}.r2-live-page .r2-mental-calendar-actions button{font-size:12px}}
