@import url("../bridge-languages/fonts/noto.css");
@import url("./legal-copy.css");
/* Shared mobile language picker. */
.hub-language-switch{font-family:inherit;cursor:pointer;flex:0 1 auto;max-width:100%;text-align:start;white-space:normal}
.hub-language-switch .hub-language-button__code{flex-shrink:0}
.hub-language-switch .hub-language-button__label{line-height:1.4}
.hub-language-switch:lang(ar),#hub-language-dialog:lang(ar){font-family:"Noto Sans Arabic","Noto Sans",sans-serif}
.hub-language-switch:lang(vi),#hub-language-dialog:lang(vi){font-family:"Noto Sans",sans-serif}
.hub-language-switch:lang(ar){padding:3px 4px 3px 10px}
.hub-language-switch:lang(ar) .hub-language-button__arrow{transform:translateX(1px) rotate(-135deg)}
#hub-language-dialog{box-sizing:border-box;width:min(390px,calc(100vw - 28px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:20px;border:1px solid #75674e;border-radius:22px;background:#191a1c;color:#f2f1ee;font-family:"TT Firs Neue","Noto Sans",sans-serif;overflow:auto;overscroll-behavior:contain;box-shadow:0 24px 80px #0009}
#hub-language-dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}
#hub-language-dialog header{display:flex;align-items:center;justify-content:space-between;gap:10px}
#hub-language-dialog h2{margin:0;font:inherit;font-size:21px;font-weight:750;line-height:1.35;overflow-wrap:break-word}
#hub-language-dialog [data-language-close]{flex:0 0 44px;height:44px;padding:0;border:1px solid #ffffff29;border-radius:50%;background:#ffffff08;color:#ddd;font:28px/1 sans-serif;cursor:pointer}
#hub-language-hint{margin:10px 0 20px;color:#bbb9b4;font-size:13px;font-weight:400;line-height:1.6}
.hub-language-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;direction:ltr}
.hub-language-options button{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0;min-height:52px;padding:10px 12px;border:1px solid #ffffff21;border-radius:12px;background:#ffffff04;color:#f2f1ee;font:inherit;font-size:14px;line-height:1.4;text-align:start;cursor:pointer}
.hub-language-options [lang=ar]{font-family:"Noto Sans Arabic",sans-serif}
.hub-language-options [lang=vi]{font-family:"Noto Sans",sans-serif}
#hub-language-dialog .hub-language-check{flex:0 0 16px;color:#d6bd8d;font:16px/1 sans-serif;visibility:hidden}
#hub-language-dialog [aria-pressed=true]{border-color:#d6bd8d;background:#d6bd8d16}
#hub-language-dialog [aria-pressed=true] .hub-language-check{visibility:visible}
#hub-language-dialog [data-language-automatic]{display:grid;grid-template-columns:minmax(0,1fr) 16px;gap:5px 10px;width:100%;min-height:64px;margin-top:18px;padding:12px;border:1px solid #ffffff21;border-radius:12px;background:#ffffff04;color:#eee;font:inherit;font-size:13px;line-height:1.5;text-align:start;cursor:pointer}
#hub-language-dialog [data-language-automatic][aria-pressed=true]{border-color:#d6bd8d;background:#d6bd8d16}
#hub-language-dialog [data-auto-current]{grid-column:1;font-size:12px;color:#bbb9b4;font-weight:400}
#hub-language-dialog [data-language-automatic] .hub-language-check{grid-column:2;grid-row:1/3;align-self:center}
#hub-language-dialog button:focus-visible{outline:2px solid #fff;outline-offset:3px}

/* Copy may grow; preserve reading order and avoid fixed-height text clipping. */
[data-bridge-copy]{overflow-wrap:anywhere;white-space:normal;text-align:start}
[data-bridge-copy]:lang(ar){font-family:"Noto Sans Arabic",sans-serif!important;font-style:normal!important;letter-spacing:0!important;line-height:1.75!important}
[data-bridge-copy]:lang(vi),[data-bridge-copy]:lang(ru){font-family:"Noto Sans",sans-serif!important}
.hub-training-plan [data-bridge-copy].hub-training-plan__special-text,.hub-training-plan [data-bridge-copy].hub-training-plan__special-detail{font-size:14px;line-height:1.55}
.hub-training-plan [data-bridge-copy].hub-training-plan__day-special{font-size:13px;line-height:1.5}
[data-hub-opening-hours-value][data-bridge-copy]{white-space:pre-line}
.hub-campaign-card__title[data-bridge-copy]{white-space:normal;overflow-wrap:break-word}
.hub-campaign-card__text[data-bridge-copy],.hub-campaign-card__note[data-bridge-copy]{white-space:pre-line}
[data-hub-announcement-popup] [data-bridge-copy]{min-width:0;max-width:100%}
/* Campaign photography stays separate from live, translatable copy. */
[data-campaign-static]{overflow-wrap:break-word}
[data-campaign-static]:lang(ar){font-family:"Noto Sans Arabic",sans-serif;letter-spacing:0;font-style:normal;direction:rtl;text-align:start}
[data-campaign-static]:lang(ar) :is(span,h3,h4,p){font-family:inherit;font-style:normal;letter-spacing:0;line-height:1.65}
[data-campaign-static]:lang(vi),[data-campaign-static]:lang(ru){font-family:"Noto Sans",sans-serif}
.hub-campaign-card__hero-copy[data-campaign-static]{gap:0;max-height:calc(100% - 28px)}
.hub-campaign-card__hero-copy:lang(ar) .hub-campaign-card__heroTitle{font-family:"TT Firs Neue",sans-serif;font-size:clamp(26px,7.5vw,34px);line-height:.98;direction:ltr}
/* The unchanged Latin coach name retains its approved type in every language. */
body.ringside-hub .hub-campaign-card--coach-redbeard .hub-campaign-card__hero-copy .hub-campaign-card__heroTitle{font-family:"TT Firs Neue",Arial,sans-serif;font-style:italic;letter-spacing:normal;line-height:.98;direction:ltr;unicode-bidi:isolate}
.hub-campaign-card__hero-copy:lang(ar) .hub-campaign-card__heroEyebrow{font-size:11px}
.hub-campaign-card__hero-copy .hub-campaign-card__heroEyebrow{line-height:1.4;max-width:100%}
.hub-campaign-card__hero-copy .hub-campaign-card__heroDate{line-height:1.5;max-width:100%}
[data-campaign-ticket] .rsg-ticket-render{--gold:#d6bd8d;--blue:#75a7e8;--orange:#f3a018;--font:"Ringside Firs","Noto Sans","Noto Sans Arabic",sans-serif;display:block;width:100%;height:100%;position:relative}
[data-campaign-ticket] .rsg-ticket-render:lang(ar){--font:"Noto Sans Arabic","Noto Sans",sans-serif}
[data-campaign-ticket] .rsg-ticket-render:lang(vi){--font:"Noto Sans","Noto Sans Arabic",sans-serif}
[data-campaign-ticket] .ticket-poster{border-radius:0}
.hub-campaign-card--social-ticket-plus .hub-campaign-card__hero{aspect-ratio:auto}
.hub-campaign-card--social-ticket-plus [data-campaign-ticket]{aspect-ratio:13/6;height:auto}
.hub-campaign-card--social-ticket-plus .hub-campaign-card__info-toggle{position:relative;display:flex;right:auto;bottom:auto;width:max-content;min-height:36px;max-width:calc(100% - 24px);margin:4px 12px 10px auto}
[data-hub-opening-hours-value][dir=ltr]:not(.is-special-hours){direction:ltr;unicode-bidi:isolate;white-space:pre-line;font-family:"Noto Sans",sans-serif!important;line-height:1.65!important;letter-spacing:0}
.hub-opening-hours-sheet__day.is-today dt[data-hours-today]::after{content:attr(data-hours-today);font-size:9px;line-height:1.4;letter-spacing:0}
.hub-coach-schedule[dir=rtl] .hub-coach-schedule__day li{direction:rtl}
.hub-coach-schedule__day strong{direction:ltr;unicode-bidi:isolate}
