/* Shared UX system, applied last to all six static versions. */
:root {
  --ux-muted: var(--muted);
  --ux-line: var(--line); --ux-radius: 18px;
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px;
  --space-6: 24px; --space-8: 32px; --space-12: 48px; --space-16: 64px;
  --header-height: 92px; --dock-height: 84px;
}
body[data-ux] {  --radius: var(--ux-radius); }
html { scroll-padding-block: calc(var(--header-height) + 20px) calc(var(--dock-height) + 16px); }
body[data-ux] main.ux-main { min-width: 0; }
body[data-ux] main.ux-main :is(section,article,aside,div,li) { min-width: 0; }
body[data-ux] main.ux-main [id] { scroll-margin-top: 0; }
body[data-ux] main.ux-main :is(h1,h2,h3) {   hyphens: manual; overflow-wrap: break-word; }
body[data-ux] main.ux-main h1 { margin: 0 0 20px; }
.ux-promo-actions { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 16px; }
.promo-heading .ux-promo-terms { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.bonus-body a.ux-bonus-cta { display: flex; justify-content: center; min-height: 44px; margin-top: 16px; padding: 10px 16px; border-radius: 999px; background: var(--purple); color: #fff; text-align: center; }
.bonus-body a.ux-card-conditions { display: flex; justify-content: center; min-height: 44px; margin-top: 4px; text-decoration: underline; text-underline-offset: 3px; }
.bonus-card { display: flex; flex-direction: column; }
.bonus-card[hidden] { display: none; }
.bonus-body { display: flex; flex: 1; flex-direction: column; }
.bonus-body a.ux-bonus-cta { margin-top: auto; }
.android-button,.register-button,.access-button { font-weight: 800; }
.sport-verdict > a { display: flex; justify-content: center; align-items: center; gap: 8px; }
.app-inline-offer > a.primary { display: inline-flex; justify-content: center; align-items: center; min-height: 48px; padding: 12px 20px; border-radius: 12px; background: var(--purple); color: #fff; font-weight: 800; text-align: center; }

body[data-ux] main.ux-main :is(.hero-note,.age-note,.trust-note,.ux-external-note) {  opacity: 1; }

body[data-ux] main.ux-main :is(.article-section,.sports-article-section,.legal-section) { padding: var(--space-8); scroll-margin-top: 0; }
body[data-ux] main.ux-main :is(.article-section,.sports-article-section,.legal-section) > :is(p,ul,ol),
body[data-ux] main.ux-main :is(.ux-details-content,.ux-guide-intro) > :is(p,ul,ol) { max-inline-size: 74ch; }

body[data-ux] main.ux-main .bonus-facts div { gap: 12px; }

body[data-ux] .league small {   opacity: 1; }
body[data-ux] main.ux-main :is(.content-card,.installation,.app-description,.app-faq,.security-section,.registration-steps,.preparation,.account-rules,.registration-faq,.login-steps,.access-help,.connexion-faq,.security-guide) { padding: var(--space-8); border-radius: var(--ux-radius); margin-top: var(--space-6); }

body[data-ux] :is(.footer-legal-links a,.footer-top) { display: inline-flex; min-height: 44px; align-items: center; padding: 8px 4px; }
body[data-ux] .footer-legal-links { gap: 8px 16px; }
body[data-ux] main.ux-main .site-footer .footer-legal-links a {  min-height: 44px; }
body[data-ux] .site-footer { margin-top: var(--space-8); padding: var(--space-8) 4px 12px; }
body[data-ux] main.ux-main :is(.article-nav,.sports-article-nav) a { min-height: 44px; display: inline-flex; align-items: center; }
body[data-ux] :is(a,button,select,summary,[tabindex="0"]):focus-visible { outline: 3px solid #25103f; outline-offset: 2px; box-shadow: 0 0 0 2px #fff; }
body[data-ux] :is(.topbar,.sport-topbar) { min-height: var(--header-height); }
body[data-ux] :is(.header-actions,.sport-actions) { gap: 8px; }
body[data-ux] :is(.login-link,.access-link) { display: inline-flex; align-items: center; min-height: 44px; padding: 8px; }
body[data-ux] .language-switcher select { min-width: 54px; min-height: 44px; }
body[data-ux] :is(.primary,.android-button,.register-button,.access-button,.ux-main-cta,.ux-secondary-cta,.hero-button) { min-height: 48px;    text-align: center; border-radius: 12px; padding: 12px 20px; max-width: 100%; white-space: normal; }
body[data-ux] :is(.header-actions,.sport-actions) :is(.primary.small,.soft-button) { min-height: 44px; padding: 8px 16px;  border-radius: 12px; }
.skip-link { position: fixed; z-index: 2000; top: 8px; left: 16px; padding: 12px 20px;   border-radius: 10px; transform: translateY(-150%); }
.skip-link:focus { transform: none; }
/* Destination-based navigation, with one consistent 24px icon family. */
body[data-ux] :is(.rail,.sport-rail) { gap: 16px; }
body[data-ux] :is(.rail-group,.sport-rail .rail-group) { padding: 12px; border-radius: var(--ux-radius); }
body[data-ux] :is(.rail-group,.sport-rail .rail-group) a { display: flex; gap: 12px; min-height: 44px; padding: 10px; align-items: center; }

.ux-nav-icon { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; flex: 0 0 24px; }

.ux-primary-nav,.ux-sections { display: grid; gap: 4px; }
/* One informative first screen and one leading action. */
.ux-home-hero { position: relative; display: grid; grid-template-columns: minmax(0,1.45fr) minmax(210px,.65fr); overflow: hidden; padding: 40px; gap: 24px;   border-radius: var(--ux-radius); }
.ux-hero-copy { position: relative; z-index: 1; min-width: 0; }
.ux-role { max-width: 60ch; margin: 0 0 24px; }

body[data-ux] main.ux-main .ux-offer {     margin: 0 0 12px; }
.ux-offer em { font-style: normal; }
.ux-offer-copy { max-width: 52ch; margin: 0 0 24px; }
.ux-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.ux-main-cta,.ux-secondary-cta { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 20px; border-radius: 12px; }

.ux-secondary-cta {  border: 1px solid currentColor; }
.ux-external-note { max-width: 70ch; margin: 16px 0 0; }
.ux-hero-art { align-self: end; min-width: 0; }
.ux-hero-art img { display: block; width: 100%; height: auto; object-fit: contain; }
.ux-sport-hero { padding: 40px;  border-radius: var(--ux-radius); }

body[data-ux] main.ux-main .sports-hero { display: block; }
.ux-guide-intro { padding: 32px; }
.ux-key-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); padding: 0; gap: 12px; list-style: none; }
.ux-key-facts li { display: grid; gap: 4px; padding: 16px; border: 1px solid var(--ux-line); border-radius: 12px; }

.ux-catalog-note { max-width: 70ch; }
body[data-ux] .game-card img,body[data-ux] .game-card:hover img { transform: none; transition: none; }
body[data-ux] .game-card { cursor: default; }
body[data-ux] .section-controls :is(a,button) { min-height: 44px; min-width: 44px; }
body[data-ux] :is(.section-icon,.title-icon) { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; flex: 0 0 40px;   border-radius: 12px; }
body[data-ux] main.ux-main :is(.android-hero,.registration-hero,.connexion-hero) { grid-template-columns: minmax(0,1.25fr) minmax(240px,.75fr); min-height: 0; border-radius: var(--ux-radius); }
body[data-ux] main.ux-main :is(.android-hero-copy,.registration-copy,.connexion-copy) { padding: 40px; }
body[data-ux] main.ux-main :is(.android-hero-copy,.registration-copy,.connexion-copy) > p { max-width: 60ch; }
body[data-ux] main.ux-main .hero-actions { flex-wrap: wrap; gap: 16px; }
body[data-ux] main.ux-main .hero-actions .text-link { min-height: 44px; display: inline-flex; align-items: center; }
body[data-ux] main.ux-main :is(.phone-stage,.welcome-visual,.account-visual) { min-height: 400px; }
body[data-ux] .phone-stage { overflow: hidden; }
body[data-ux] .phone-stage .phone-front { right: 6%; }
body[data-ux] .welcome-ticket { right: 5%; width: 250px; }
body[data-ux] .account-card { right: 7%; width: 240px; }
/* The catalogue leads; detailed conditions stay available on demand. */
body[data-ux] main.ux-main .promo-heading { padding: 32px; grid-template-columns: minmax(0,1fr); gap: 16px; }
body[data-ux] main.ux-main .promo-heading p {  max-width: 68ch; }
body[data-ux] .bonus-catalogue { padding: 24px; border-radius: var(--ux-radius); }
body[data-ux] .catalogue-head { gap: 16px; flex-wrap: wrap; }
body[data-ux] .filter-tabs { gap: 8px; padding: 4px; border-radius: 12px; flex-wrap: wrap; }
body[data-ux] .filter-tabs button { min-height: 44px; padding: 8px 14px;  border-radius: 10px; }
body[data-ux] .bonus-card {   border-radius: 16px; }
body[data-ux] .bonus-card:hover { transform: none; box-shadow: none; }
body[data-ux] .bonus-art { min-height: 64px; padding: 16px 20px; align-items: center; }
body[data-ux] .bonus-art :is(i),body[data-ux] .bonus-art::before,body[data-ux] .bonus-art::after { display: none; }
body[data-ux] .bonus-art span { max-width: 100%; }

body[data-ux] .bonus-body { padding: 20px; }

body[data-ux] main.ux-main .bonus-body p { min-height: 0; }
body[data-ux] .bonus-body a { min-height: 44px; padding: 8px 0; }
body[data-ux] .ux-article-details { padding: 0 !important; }
.ux-article-details > summary { display: flex; justify-content: space-between; gap: 20px; align-items: center; list-style: none; padding: 24px 32px; cursor: pointer; }
.ux-article-details > summary::-webkit-details-marker { display: none; }
body[data-ux] main.ux-main .ux-article-details > summary h2 { margin: 0; }
.ux-article-details > summary > span {  flex-shrink: 0; }
.ux-article-details[open] > summary > span { transform: rotate(45deg); }
.ux-details-content { padding: 0 32px 32px; }
body[data-ux] :is(.ux-related) { padding: 24px; border: 1px solid var(--ux-line); border-radius: var(--ux-radius);  margin: 24px 0; }
body[data-ux] main.ux-main .ux-related h2 { margin: 0 0 16px; }
.ux-related > div { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.ux-related a { display: inline-flex; min-height: 44px; align-items: center; }
body[data-ux] .app-inline-offer { position: relative; display: flex; align-items: center; gap: 24px; margin-top: 32px; padding: 24px 68px 24px 24px; border: 1px solid var(--ux-line); border-radius: var(--ux-radius); }
.app-inline-offer > div { display: grid; gap: 8px; margin-right: auto; }
.app-inline-offer > div a { min-height: 44px; display: inline-flex; align-items: center; text-decoration: underline; }
.app-inline-offer button { position: absolute; top: 12px; right: 12px; width: 44px; height: 44px; border: 1px solid #837a91; border-radius: 50%;    cursor: pointer; }
.ux-table-hint { margin: 16px 0 8px; }
.ux-table-region { overflow-x: auto; scrollbar-width: auto; scroll-margin-top: 0; }

body[data-ux] main.ux-main :is(.app-table,.policy-table,.table-wrap table,.sports-table-wrap table) :is(th,td) { padding: 16px; }
body[data-ux] main.ux-main :is(.legal-hero,.error-card) { min-height: 0; padding: 32px; border-radius: var(--ux-radius); }
body[data-ux] .legal-hero { grid-template-columns: minmax(0,1fr) auto; }
body[data-ux] .legal-hero-mark { width: 88px; height: 88px; }
body[data-ux] .error-copy { padding: 0; }
body[data-ux] .error-visual { min-height: 220px; }
body[data-ux] .error-token { width: 180px; height: 180px; top: 10px; right: 10%;  border-radius: 32px; }
body[data-ux] .error-visual::before,body[data-ux] .error-visual::after,body[data-ux] .error-visual > :is(span,i) { display: none; }
body[data-ux] .error-shortcuts { grid-template-columns: repeat(2,minmax(0,1fr)); }

body[data-ux] .ux-external-link::after { content: none; }

body[data-ux] .mobile-dock b {    text-overflow: clip; }
body[data-ux] .mobile-dock-panel { z-index: 1100; }
body[data-ux] .mobile-dock-panel__card { max-height: calc(100dvh - 120px); overflow-y: auto; }
body[data-ux] .mobile-dock-panel__card header button { min-width: 44px; min-height: 44px; }
body[data-ux] .mobile-dock-panel__links { grid-template-columns: repeat(2,minmax(0,1fr)); }
body[data-ux] .mobile-dock-panel__links a { min-height: 56px; }
body[data-ux] .mobile-dock-panel__links span { width: 24px; height: 24px; border-radius: 0; }
@media (min-width: 821px) { .ux-table-hint { display: none; } }
@media (max-width: 1080px) and (min-width: 821px) {
  .ux-home-hero { grid-template-columns: 1fr; }
  .ux-hero-art { display: none; }
  body[data-ux] main.ux-main :is(.android-hero,.registration-hero,.connexion-hero) { grid-template-columns: 1fr; }
  body[data-ux] :is(.phone-stage,.welcome-visual,.account-visual) { display: none; }
  /* The side rail leaves too little room for desktop text/action columns. */
  body[data-ux] main.ux-main :is(.welcome-offer,.sport-verdict,.final-verdict,.registration-final,.connexion-final) { grid-template-columns: minmax(0,1fr); }
  body[data-ux] main.ux-main :is(.sport-category-grid,.login-steps ol) { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body[data-ux] .offer-actions { flex-wrap: wrap; }
}
@media (max-width: 820px) {
  :root { --header-height: 116px; }
  body[data-ux] :is(.content-shell,.sports-main) { margin-inline: 20px; width: auto; padding: 132px 0 calc(104px + env(safe-area-inset-bottom)); }

  body[data-ux] :is(.header-actions,.sport-actions) .login-link,body[data-ux] .sport-actions .access-link { display: inline-flex; }
  body[data-ux] :is(.topbar,.sport-topbar) { overflow: visible; }
  body[data-ux] :is(.topbar,.sport-topbar) .brand,body[data-ux] .sport-topbar .sport-brand { min-height: 44px; display: flex; align-items: center; }
  body[data-ux] :is(.header-actions,.sport-actions) .ux-external-link::after { display: none; }
  .ux-home-hero { grid-template-columns: 1fr; padding: 24px; gap: 0; }
  .ux-hero-art { display: none; }
  .ux-sport-hero { padding: 24px; }

  .ux-role { margin-bottom: 20px; }
  .ux-guide-intro { padding: 24px; }
  .ux-key-facts { grid-template-columns: 1fr; }
  body[data-ux] main.ux-main :is(.android-hero,.registration-hero,.connexion-hero) { grid-template-columns: 1fr; }
  body[data-ux] main.ux-main :is(.android-hero-copy,.registration-copy,.connexion-copy) { padding: 24px; }
  body[data-ux] :is(.phone-stage,.welcome-visual,.account-visual) { display: none; }
  body[data-ux] main.ux-main :is(.article-section,.sports-article-section,.legal-section,.content-card,.installation,.app-description,.app-faq,.security-section,.registration-steps,.preparation,.account-rules,.registration-faq,.login-steps,.access-help,.connexion-faq,.security-guide) { padding: 24px; margin-top: 16px; }
  body[data-ux] main.ux-main :is(.legal-hero,.error-card) { padding: 24px; }
  body[data-ux] .legal-hero { grid-template-columns: minmax(0,1fr); }
  body[data-ux] .legal-hero-mark { display: none; }
  body[data-ux] main.ux-main .promo-heading { padding: 24px; }
  body[data-ux] .bonus-catalogue { padding: 20px; margin-top: 16px; }
  body[data-ux] .bonus-grid { gap: 16px; }
  body[data-ux] .filter-tabs { width: 100%; overflow: visible; flex-wrap: wrap; border-radius: 12px; }
  body[data-ux] .catalogue-head { align-items: flex-start; }
  .ux-article-details > summary { padding: 20px 24px; }
  .ux-details-content { padding: 0 24px 24px; }
  body[data-ux] .app-inline-offer { flex-direction: column; align-items: flex-start; padding: 24px 64px 24px 24px; }
  body[data-ux] .error-visual { min-height: 140px; }
  body[data-ux] .error-token { width: 120px; height: 120px; top: 4px; right: 12px;  border-radius: 24px; }
  body[data-ux] .error-shortcuts { grid-template-columns: 1fr; }
  body[data-ux] .mobile-dock { right: 8px; left: 8px; bottom: max(8px,env(safe-area-inset-bottom)); padding: 4px; min-height: 68px; }
}
@media (max-width: 640px) {

  .ux-stacked-table,.ux-stacked-table tbody,.ux-stacked-table tr,.ux-stacked-table :is(th,td) { display: block; width: 100% !important; min-width: 0 !important; }
  .ux-stacked-table { min-width: 0 !important; }
  .ux-stacked-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .ux-stacked-table tr { border-bottom: 1px solid var(--ux-line); }
  .ux-stacked-table td::before { content: attr(data-label); display: block; margin-bottom: 4px; }
  .ux-stacked-hint { display: none; }
}
@media (max-width: 480px) {
  body[data-ux] .mobile-dock-panel__links { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 360px) {
  body[data-ux] :is(.content-shell,.sports-main) { margin-inline: 16px; }

  .ux-home-hero,.ux-sport-hero { padding: 20px; }
  body[data-ux] main.ux-main :is(.android-hero-copy,.registration-copy,.connexion-copy,.promo-heading,.legal-hero,.error-card) { padding: 20px; }

}
html:is([lang^="de"],[lang^="ru"]) body[data-ux] main.ux-main :is(h1,h2,h3) { hyphens: auto; hyphenate-limit-chars: 8 4 4; }
@media (prefers-reduced-motion: reduce) {
  html,body[data-ux] *,body[data-ux] *::before,body[data-ux] *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
  body[data-ux] :is(.game-card:hover img,.bonus-card:hover) { transform: none !important; }
}

/* Keep the original visual palette and type scale on the new UX structure. */
.ux-home-hero { color: #fff; background: linear-gradient(120deg,#bc2d79,#be2f7c); }
.ux-sport-hero { color: #fff; background: linear-gradient(120deg,#7a4ee6,#8a62eb); }
.ux-home-hero h1 { font-size: clamp(36px,4.2vw,58px); line-height: 1.02; letter-spacing: -2.8px; font-weight: 700; }
.ux-sport-hero h1 { font-size: clamp(36px,4.1vw,57px); line-height: 1.02; letter-spacing: -2.7px; font-weight: 700; }
.ux-role,.ux-offer-copy { font-size: 17px; line-height: 1.55; }
.ux-offer { font-size: clamp(38px,4.1vw,62px); line-height: .98; letter-spacing: -3px; font-weight: 800; }
.ux-offer em { font-style: normal; color: #ffcf51; }
.ux-sport-hero .ux-offer { font-size: clamp(36px,3.6vw,54px); }
.ux-main-cta { color: #242331; background: #fff; font-size: 13px; font-weight: 800; }
.ux-secondary-cta { font-size: 13px; font-weight: 800; }
.ux-external-note,.ux-catalog-note,.ux-table-hint { font-size: 13px; line-height: 1.55; }
.ux-guide-intro h2,.ux-related h2 { font-size: 27px; line-height: 1.15; }
.ux-key-facts b { font-size: 14px; }.ux-key-facts span { color: var(--muted); font-size: 12px; }
.ux-related { background: #fff; }.ux-related a { color: var(--purple); font-weight: 800; }
.app-inline-offer { background: #f1ecff; }.app-inline-offer button { color: var(--ink); background: #fff; font-size: 24px; }
.ux-article-details > summary > span { font-size: 24px; }
.skip-link { color: #fff; background: #25103f; }
@media (min-width:821px) { body.ux-quiet :is(.topbar,.sport-topbar) a.ux-header-register { display: none; } }
@media (max-width:820px) {
 body[data-ux] :is(.topbar,.sport-topbar) a.ux-header-register { color: #fff; background: #16a36a; box-shadow: none; }
 .ux-home-hero h1,.ux-sport-hero h1 { font-size: 34px; letter-spacing: -1.8px; }
 .ux-home-hero .ux-offer { font-size: 38px; }.ux-sport-hero .ux-offer { font-size: 32px; }
 .ux-role,.ux-offer-copy { font-size: 14px; }
 body[data-ux] :is(.topbar,.sport-topbar) { grid-template-columns: 60px minmax(0,1fr); column-gap: 6px; }
 body[data-ux] :is(.brand,.sport-brand) img { width: 60px; }
 body[data-ux] :is(.header-actions,.sport-actions) { gap: 4px; width: 100%; justify-content: flex-end; }
 body[data-ux] :is(.header-actions,.sport-actions) :is(.login-link,.access-link,.ux-header-register) { display: inline-flex; justify-content: center; align-items: center; min-height: 44px; padding: 8px 7px; font-size: 11px; line-height: 1.2; white-space: nowrap; }
 body[data-ux] .language-switcher select { width: 44px; min-width: 44px; padding-inline: 4px; font-size: 11px; }
 body[data-ux] .ux-header-register::after { display: none; }
}

/* Casino offer first; the H1 and explanatory copy belong to the article. */
.ux-home-hero { min-height: 300px; align-items: center; }
.ux-home-hero .ux-banner-kicker { margin: 0 0 18px; font-size: 13px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.ux-home-hero .ux-offer-copy { margin: 18px 0 24px; font-weight: 800; }
.ux-guide-intro h1 { max-width: 830px; margin: 16px 0 18px; font-size: clamp(36px,4.2vw,58px); line-height: 1.02; letter-spacing: -2.8px; }
@media (max-width:1080px) and (min-width:821px) {
 .ux-home-hero { grid-template-columns: minmax(0,1fr) 180px; }
 .ux-home-hero .ux-hero-art { display: block; }
}
@media (max-width:820px) {
 .ux-home-hero { grid-template-columns: minmax(0,1fr) 120px; min-height: 290px; padding: 24px 20px; gap: 12px; }
 .ux-home-hero .ux-hero-art { display: block; align-self: center; }
 .ux-home-hero .ux-offer { font-size: 34px; letter-spacing: -1.5px; }
 .ux-home-hero .ux-banner-kicker { font-size: 11px; line-height: 1.4; }
 .ux-home-hero .ux-offer-copy { font-size: 14px; line-height: 1.4; }
 .ux-home-hero .ux-main-cta,.ux-home-hero .ux-secondary-cta { padding: 12px; }
 .ux-guide-intro h1 { font-size: 34px; letter-spacing: -1.8px; }
}
@media (max-width:360px) {
 .ux-home-hero { grid-template-columns: minmax(0,1fr) 90px; padding-inline: 20px; gap: 8px; }
 .ux-home-hero .ux-offer { font-size: 30px; }
}
@media (max-width:820px) {
 .ux-home-hero { grid-template-columns: minmax(0,1fr) 120px; row-gap: 16px; }
 .ux-home-hero .ux-hero-copy { display: contents; }
 .ux-home-hero .ux-banner-kicker { grid-column: 1 / -1; margin: 0; }
 .ux-home-hero .ux-offer { grid-column: 1; grid-row: 2; margin: 0; }
 .ux-home-hero .ux-offer-copy { grid-column: 1; grid-row: 3; margin: 0; }
 .ux-home-hero .ux-hero-art { grid-column: 2; grid-row: 2 / 4; width: 100%; }
 .ux-home-hero .ux-hero-actions { grid-column: 1 / -1; grid-row: 4; align-items: stretch; flex-direction: column; gap: 8px; }
 .ux-home-hero .ux-secondary-cta { align-self: center; padding: 4px 8px; min-height: 32px; border: 0; text-decoration: underline; }
}
@media (max-width:360px) { .ux-home-hero { grid-template-columns: minmax(0,1fr) 90px; } }
.ux-home-hero .ux-banner-cap { display: block; margin-bottom: 8px; font-size: 16px; line-height: 1.2; letter-spacing: 0; font-weight: 700; }
@media (max-width:360px) {
 body[data-ux] :is(.topbar,.sport-topbar) { grid-template-columns: 44px minmax(0,1fr); }
 body[data-ux] :is(.brand,.sport-brand) img { width: 44px; }
}
body[data-ux="sport"] .account-guides { margin: 22px 0; padding: 16px 20px; color: #666979; background: #fff; border: 1px solid var(--line); border-radius: 15px; font-size: 11px; line-height: 1.55; text-align: center; }
body[data-ux="sport"] .account-guides a { color: var(--purple); font-weight: 850; }

/* Typography matched to the Slott reference, 2026-10-23. Self-hosted OFL fonts. */
@font-face { font-family: Montserrat; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/montserrat-0.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/montserrat-1.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/montserrat-2.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/montserrat-3.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 500; font-display: swap; src: url("/assets/fonts/montserrat-0.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 500; font-display: swap; src: url("/assets/fonts/montserrat-1.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 500; font-display: swap; src: url("/assets/fonts/montserrat-2.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 500; font-display: swap; src: url("/assets/fonts/montserrat-3.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 600; font-display: swap; src: url("/assets/fonts/montserrat-0.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 600; font-display: swap; src: url("/assets/fonts/montserrat-1.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 600; font-display: swap; src: url("/assets/fonts/montserrat-2.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 600; font-display: swap; src: url("/assets/fonts/montserrat-3.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/montserrat-0.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/montserrat-1.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/montserrat-2.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Montserrat; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/montserrat-3.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Poppins; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/poppins-4.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Poppins; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/poppins-5.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Poppins; font-style: normal; font-weight: 500; font-display: swap; src: url("/assets/fonts/poppins-6.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Poppins; font-style: normal; font-weight: 500; font-display: swap; src: url("/assets/fonts/poppins-7.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Poppins; font-style: normal; font-weight: 600; font-display: swap; src: url("/assets/fonts/poppins-8.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Poppins; font-style: normal; font-weight: 600; font-display: swap; src: url("/assets/fonts/poppins-9.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Poppins; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/poppins-10.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Poppins; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/poppins-11.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

:root { --site-font: "Poppins", sans-serif; }
html[lang^="ru"] { --site-font: "Montserrat", sans-serif; }
body[data-ux] { font-family: var(--site-font); font-size: 14px; line-height: 1.5; font-weight: 400; }
body[data-ux] :is(button,input,select,textarea) { font-family: inherit; }
body[data-ux] :is(b,strong) { font-weight: 600; }
body[data-ux] main.ux-main :is(h1,h2,h3) { font-weight: 600; letter-spacing: 0; }
body[data-ux] main.ux-main h1 { font-size: 30px; line-height: 1.27; }
body[data-ux] main.ux-main h2 { font-size: 28px; line-height: 1.29; }
body[data-ux] main.ux-main h3 { font-size: 20px; line-height: 1.4; }
body[data-ux] main.ux-main :is(p,li) { font-size: 14px; line-height: 1.6; font-weight: 400; }
body[data-ux] :is(.rail-group a,.legal-toc a,.article-nav a,.sports-article-nav a) { font-size: 14px; line-height: 20px; font-weight: 600; }
body[data-ux] :is(.mode-switch,.product-switch) :is(a,button),
body[data-ux] :is(.login-link,.access-link,.primary,.soft-button,.hero-button,.android-button,.register-button,.access-button,.ux-main-cta,.ux-secondary-cta,.filter-tabs button,.section-controls a,.section-controls button,.bonus-body a,.promo-strip a,.featured-card a) { font-size: 14px; line-height: 20px; font-weight: 500; letter-spacing: 0; }
body[data-ux] :is(.text-link,.account-guides a,.ux-related a,.site-footer a) { font-weight: 500; }
body[data-ux] .language-switcher select { font-weight: 500; }
body[data-ux] main.ux-main summary { font-size: 16px; line-height: 24px; font-weight: 600; }
body[data-ux] main.ux-main :is(.promo-strip h2,.official-card h2,.article-summary h2) { font-size: 20px; line-height: 28px; }
body[data-ux] main.ux-main :is(.ux-offer,.hero-offer,.featured-card strong) { font-size: 30px !important; line-height: 38px !important; font-weight: 700; letter-spacing: 0; }
body[data-ux] main.ux-main :is(.ux-offer-copy,.hero-copy > p,.registration-copy > p,.connexion-copy > p,.android-hero-copy > p) { font-size: 16px; line-height: 24px; font-weight: 500; }
body[data-ux] main.ux-main :is(.ux-banner-kicker,.eyebrow,.official-kicker,.bonus-type,.featured-kicker) { font-size: 11px; line-height: 16px; font-weight: 600; }
body[data-ux] main.ux-main .ux-banner-cap { font-size: 16px; line-height: 24px; font-weight: 600; }
body[data-ux] main.ux-main :is(.facts b,.bonus-art span) { font-weight: 700; letter-spacing: 0; }
body[data-ux] main.ux-main :is(table,.ux-table-hint) { font-size: 13px; line-height: 1.6; }
body[data-ux] main.ux-main :is(.site-footer p,.account-guides) { font-size: 12px; line-height: 1.6; }
body[data-ux] main.ux-main .footer-legal-links a { font-size: 12px; }
@media (max-width:820px) {
 body[data-ux] main.ux-main h1 { font-size: 26px; line-height: 34px; }
 body[data-ux] main.ux-main h2 { font-size: 22px; line-height: 30px; }
 body[data-ux] main.ux-main h3 { font-size: 18px; line-height: 26px; }
 body[data-ux] main.ux-main :is(.ux-offer,.hero-offer,.featured-card strong) { font-size: 26px !important; line-height: 34px !important; }
 body[data-ux] :is(.header-actions,.sport-actions) :is(.login-link,.access-link,.ux-header-register) { font-size: 12px; line-height: 18px; font-weight: 500; }
 body[data-ux] .language-switcher select { font-size: 12px; }
 body[data-ux] main.ux-main :is(.ux-offer-copy,.hero-copy > p) { font-size: 14px; line-height: 22px; }
}
@media (max-width:360px) {
 body[data-ux] :is(.header-actions,.sport-actions) :is(.login-link,.access-link,.ux-header-register) { padding-inline: 5px; font-size: 11px; }
}
/* Compact VIP cards keep at least eight em of usable heading width at 320/821px. */
body[data-ux] main.ux-main .promo-strip h2 { font-size: 18px; line-height: 26px; }
/* Reserve separate space for the two-letter locale and dropdown chevron. */
body[data-ux] .language-switcher { flex: 0 0 auto; }
body[data-ux] .language-switcher select {
  appearance: none;
  -webkit-appearance: none;
  box-sizing: border-box;
  width: 64px;
  min-width: 64px;
  padding: 0 24px 0 10px;
  font-family: var(--site-font);
  font-size: 12px;
  font-weight: 500;
  line-height: 20px;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='m2 4 4 4 4-4' fill='none' stroke='%2331313f' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 9px center;
}
@media (max-width:820px) {
  body[data-ux] .language-switcher select { width: 54px; min-width: 54px; padding-left: 8px; padding-right: 20px; background-position: right 6px center; }
}
