* {
  font-family: var(--primefont);
}

a {
  color: inherit;
  text-decoration: none;
}

[data-logo="dark"] {
  display: block;
}

[data-logo="light"] {
  display: none;
}

#btnSwitch {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.offcanvas {
  height: 100vh;
}

/* dropdown */
@media (min-width: 992px) {
  .nav-item.dropdown:hover > .dropdown-menu {
    display: block;
    margin-top: 0;
  }

}

.dropdown-menu {
  background: var(--head-bg) !important;
  border: 1px solid var(--light-border) !important;
}

.dropdown-item {
  color: var(--para-text) !important;
  margin-bottom: 5px;
  text-transform: capitalize;
}

.dropdown-item:hover, .dropdown-item:focus {
  background: var(--prime-bg) !important;
  color: var(--white-text) !important;
}

.dropdown-item.active, .dropdown-item:active {
  background: var(--prime-bg) !important;
  color: var(--white-text) !important;
}

header {
  transition: 0.2s ease;
  z-index: 9999;
  background: rgba(255, 255, 255, 0.82);
  border-bottom: 1px solid rgba(89, 45, 145, 0.12);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

header.fix {
  background-color: rgba(255, 255, 255, 0.95) !important;
  position: fixed !important;
}

header.fix .nav-link {
  color: var(--head-text) !important;
}

header.fix .nav-link.active {
  color: var(--prime-text) !important;
}

/* header CSS */
.nav-link {
  color: #241536;
  font-weight: 500;
}

.nav-item.active .nav-link, .nav-item:hover .nav-link, .nav-item:hover {
  color: var(--nav-alt-text) !important;
}

@media (max-width: 991px) {
  .offcanvas-body {
    background-color: #fbf9ff;
  }

  .nav-link {
    color: var(--head-text);
  }

}

.hero-banner {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(246, 240, 255, 0.18)), url("../../assets/images/romibet-hero-editorial.png") no-repeat center/cover;
  min-height: 857px;
  display: flex;
  align-items: center;
}

.banner-content {
  max-width: 720px;
  width: 100%;
  color: #241536;
  padding: 150px 26px 60px;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7);
}

.romibet-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #29143f;
}

.romibet-logo-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 15px 8px 15px 8px;
  color: #fff;
  background: linear-gradient(145deg, #7a39bd, #b06be5);
  box-shadow: 0 9px 24px rgba(103, 44, 163, 0.22);
  transform: rotate(-4deg);
}

.romibet-logo-copy {
  display: flex;
  flex-direction: column;
  line-height: 0.9;
}

.romibet-logo-name {
  font-family: var(--secondfont);
  font-size: 1.85rem;
  letter-spacing: 0.045em;
}

.romibet-logo-subtitle {
  margin-top: 7px;
  color: #9a6b16;
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.42em;
}

.hero-kicker {
  display: inline-flex;
  padding: 9px 16px;
  border: 1px solid rgba(106, 54, 165, 0.16);
  border-radius: 999px;
  color: #5d2b91;
  background: rgba(255, 255, 255, 0.7);
  box-shadow: 0 10px 30px rgba(93, 43, 145, 0.08);
  font-weight: 700;
  letter-spacing: 0.035em;
}

.hero-banner h1 {
  color: #241536;
  line-height: 1.03;
}

.hero-banner .prime-text {
  color: #7136ad !important;
}

.hero-copy {
  max-width: 640px;
  margin-inline: auto;
  color: #3f3150;
  font-size: 1.08rem;
  line-height: 1.7;
}

.romibet-cta.prime-btn {
  border-color: #6d32a8 !important;
  color: #fff !important;
  background: linear-gradient(135deg, #6b2fa6, #9654cc) !important;
  box-shadow: 0 12px 28px rgba(93, 43, 145, 0.24);
}

.romibet-cta.prime-btn:hover, .romibet-cta.prime-btn:focus {
  border-color: #4e207d !important;
  background: linear-gradient(135deg, #57228a, #7f3db7) !important;
}

@media (max-width: 991px) {
  header .container {
    flex-wrap: nowrap;
  }

  .romibet-logo-name {
    font-size: 1.45rem;
  }

  .romibet-logo-mark {
    width: 38px;
    height: 38px;
  }

  .hero-banner {
    background-position: center;
  }

  .banner-content {
    padding-top: 130px;
  }

}

@media (max-width: 575px) {
  .romibet-logo-subtitle {
    display: none;
  }

  header .romibet-cta {
    padding-inline: 0.8rem !important;
    font-size: 0.75rem;
  }

  .hero-banner {
    min-height: 720px;
  }

  .banner-content {
    padding-inline: 16px;
  }

  .hero-kicker {
    font-size: 0.82rem;
  }

}

/* Romibet Sportsbook */
/* Romibet Live Casino */
.romibet-live {
  padding: 58px 0;
  color: #29183a;
  background: linear-gradient(180deg,#f3ecfb 0%,#fff 38%,#f8f4fc 100%) !important;
  scroll-margin-top: 92px;
}

.romibet-live > .container {
  max-width: min(1540px,calc(100% - 96px));
}

.live-intro-grid {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  align-items: end;
  gap: clamp(36px,7vw,110px);
  max-width: 1450px;
  margin: 0 auto 28px;
}

.live-eyebrow {
  display: inline-block;
  margin-bottom: 8px;
  color: #7a3eb2;
  font-size: .82rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.live-intro-grid h2 {
  margin: 0;
  color: #251335;
  font-family: var(--secondfont);
  font-size: clamp(2.5rem,4.2vw,4.5rem);
  line-height: .98;
}

.live-intro-grid h2 span {
  color: #8241ba;
}

.live-intro-grid > p {
  max-width: 720px;
  margin: 0 0 4px;
  color: #5c4c68;
  font-size: 1.05rem;
  line-height: 1.65;
}

.live-compare {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 1px;
  overflow: hidden;
  max-width: 1540px;
  margin: 0 auto 18px;
  border: 1px solid #ded2e9;
  border-radius: 20px;
  background: #ded2e9;
}

.live-tab {
  display: grid;
  grid-template-columns: 38px 1fr;
  column-gap: 10px;
  align-items: center;
  padding: 17px 18px;
  border: 0;
  color: inherit;
  text-align: left;
  background: #fff;
  cursor: pointer;
  transition: background .2s ease,box-shadow .2s ease;
}

.live-tab:hover {
  background: #faf6fd;
}

.live-tab.is-active {
  position: relative;
  z-index: 1;
  background: #f4eafa;
  box-shadow: inset 0 -4px #8442b9;
}

.live-tab:focus-visible {
  outline: 3px solid #bd83ea;
  outline-offset: -4px;
}

.live-compare i {
  grid-row: 1 / 3;
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(135deg,#7134a9,#a35bd2);
}

.live-compare strong {
  color: #31203f;
  line-height: 1.1;
}

.live-compare span {
  color: #786981;
  font-size: .78rem;
  line-height: 1.35;
}

.live-catalogue {
  max-width: 1380px;
  margin: auto;
}

.live-category {
  display: grid;
  grid-template-columns: minmax(230px,.7fr) minmax(0,2.3fr);
  gap: 24px;
  overflow: hidden;
  padding: 24px;
  border: 1px solid #dfd4e8;
  border-radius: 25px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 18px 45px rgba(73,40,95,.09);
}

.live-category[hidden] {
  display: none !important;
}

.live-category header {
  align-self: center;
}

.live-category header > span {
  grid-column: 1 / -1;
  margin-bottom: 5px;
  color: #8b4cbb;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.live-category h3 {
  margin: 0;
  color: #2a173b;
  font-size: 1.75rem;
}

.live-category header p {
  margin: 10px 0 0;
  color: #65566f;
  font-size: .9rem;
  line-height: 1.6;
}

.live-card-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
}

.live-game-card {
  position: relative;
  overflow: hidden;
  min-width: 0;
  border-radius: 15px;
  background: #251534;
  box-shadow: 0 10px 24px rgba(36,20,48,.14);
}

.live-game-card img {
  display: block;
  width: 100%;
  height: auto !important;
  aspect-ratio: 2 / 3;
  object-fit: cover;
  transition: transform .25s ease;
}

.live-game-card:hover img {
  transform: scale(1.035);
}

.live-game-card strong {
  display: block;
  min-height: 48px;
  padding: 9px 10px 2px;
  color: #fff;
  font-size: .79rem;
  line-height: 1.25;
}

.live-game-card span {
  display: block;
  padding: 0 10px 10px;
  color: #c8acd9;
  font-size: .68rem;
}

.live-guide {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 14px;
  max-width: 1540px;
  margin: 18px auto 0;
}

.live-guide > div {
  padding: 20px 22px;
  border: 1px solid #e0d6e9;
  border-radius: 18px;
  background: #fff;
}

.live-guide h3 {
  margin: 0 0 7px;
  color: #39204d;
  font-size: 1.05rem;
}

.live-guide p {
  margin: 0;
  color: #6a5a73;
  font-size: .87rem;
  line-height: 1.55;
}

@media (max-width: 1100px) {
  .live-compare {
    grid-template-columns: repeat(2,1fr);
  }

  .live-category {
    grid-template-columns: 1fr;
  }

  .live-category header {
    display: grid;
    grid-template-columns: .7fr 1.3fr;
    column-gap: 24px;
    align-items: end;
  }

  .live-category header > span {
    grid-column: 1 / -1;
  }

  .live-category header p {
    margin: 0;
  }

}

@media (max-width: 767px) {
  .romibet-live {
    padding: 42px 0;
  }

  .romibet-live > .container {
    max-width: calc(100% - 26px);
  }

  .live-intro-grid {
    grid-template-columns: 1fr;
  }

  .live-intro-grid {
    gap: 14px;
  }

  .live-compare, .live-guide {
    grid-template-columns: 1fr;
  }

  .live-card-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .live-category header {
    display: block;
  }

  .live-category header p {
    margin-top: 8px;
  }

}

@media (max-width: 480px) {
  .live-category {
    padding: 15px;
    border-radius: 20px;
  }

  .live-card-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .live-game-card strong {
    min-height: 46px;
    font-size: .74rem;
  }

}

/* Responsive */
@media (max-width: 992px) {
  .hero-banner {
    min-height: 657px;
  }

}

.roll {
  animation: rollDigit 2s ease-out forwards;
}

@keyframes rollDigit {
  0% {
    transform: translateY(-120%);
    opacity: 0;
  }

  50% {
    transform: translateY(20%);
    opacity: 0.6;
  }

  100% {
    transform: translateY(0);
    opacity: 1;
  }

}

.image-container .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.55);
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  cursor: pointer;
  visibility: hidden;
  transition: 0.3s ease;
}

.image-container:hover .overlay {
  opacity: 1;
  visibility: visible;
}

.game {
  transition: all 0.5s ease;
}

.game:hover {
  color: var(--prime-text);
}

#backtotop.show {
  opacity: 1;
  visibility: visible;
}

#backtotop {
  position: fixed;
  bottom: 80px;
  right: 30px;
  opacity: 0;
  visibility: hidden;
  z-index: 1000;
  min-width: unset;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px !important;
  height: 50px !important;
}

.error {
  color: red;
  text-transform: capitalize;
}

.alertmsg {
  z-index: 9999999;
}

@keyframes floatUpDown {
  0% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-15px);
  }

  100% {
    transform: translateY(0);
  }

}

@keyframes floatLeftRight {
  0% {
    transform: translateX(0);
  }

  50% {
    transform: translateX(40px);
  }

  100% {
    transform: translateX(0);
  }

}

/* rating */
.star-rating {
  display: inline-block;
  font-size: 1.5rem;
  cursor: pointer;
}

.star {
  position: relative;
  display: inline-block;
  color: #ccc;
}

.star:before {
  content: "★";
  position: absolute;
  left: 0;
  width: 0;
  overflow: hidden;
  color: gold;
}

.star.filled:before {
  width: 100%;
}

.star.half:before {
  width: 50%;
}

/* ############## FAQ Page ###############*/
.accordion-button:not(.collapsed) {
  color: var(--prime-text) !important;
  font-weight: 600;
  box-shadow: none !important;
}

.accordion-button:not(.collapsed) .faq-icon {
  transform: rotate(180deg);
}

/* Header nav links fix */
.navbar .nav-link, .navbar .nav-link:visited, .navbar .nav-link:focus, .navbar .nav-link:active {
  color: var(--nav-text) !important;
  outline: none;
  box-shadow: none;
}

.navbar .nav-item.active .nav-link, .navbar .nav-link:hover, .navbar .nav-link:focus:hover {
  color: var(--nav-alt-text) !important;
}

.navbar .nav-link.current-link {
  color: var(--nav-alt-text) !important;
}

.top-game-overlay .btn {
  min-width: 150px;
  text-align: center;
  pointer-events: none;
}

/* mobile / small tablet */
@media (max-width: 767px) {
  .top-game-overlay .btn {
    min-width: auto;
    padding: 10px 14px !important;
    font-size: 13px;
  }

}

/* About Section */
.about-section {
  position: relative;
  overflow: hidden;
}

.benefit-featured-card .btn {
  margin-top: auto;
  align-self: flex-start;
}

@keyframes promoFloatImage {
  0% {
    transform: translateY(0px);
  }

  50% {
    transform: translateY(-14px);
  }

  100% {
    transform: translateY(0px);
  }

}

/* Global dark-theme text readability fix */
:root {
  --section-text: rgba(255, 255, 255, 0.76);
  --section-text-strong: rgba(255, 255, 255, 0.88);
  --section-border: rgba(255, 255, 255, 0.08);
}

/* Payments Section */
.payments-section {
  position: relative;
  overflow: hidden;
}

.payments-tab-btn.is-active {
  background: linear-gradient(135deg, rgba(255,216,107,0.20), rgba(255,158,87,0.14));
  border-color: rgba(255,216,107,0.30);
  color: #ffd86b;
}

.payments-tab-panel.is-active {
  display: block;
}

.faq-columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 28px;
}

.faq-column {
  min-width: 0;
}

.faq-button:not(.collapsed) {
  color: #ffffff !important;
  background: transparent !important;
}

.faq-button:not(.collapsed) .faq-toggle-icon {
  transform: translateY(-50%) rotate(180deg);
  background: rgba(255,216,107,0.18);
}

@media (max-width: 991px) {
  .faq-columns {
    grid-template-columns: 1fr;
    gap: 20px;
  }

}

/* Footer */
.site-footer {
  position: relative;
  background: #000000;
  border-top: 1px solid rgba(255,255,255,0.08);
  overflow: hidden;
}

.site-footer::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top right, rgba(255,216,107,0.06), transparent 22%), radial-gradient(circle at bottom left, rgba(210,116,255,0.05), transparent 22%);
  pointer-events: none;
}

.footer-main {
  position: relative;
  z-index: 2;
  padding: 70px 0 44px;
}

.footer-brand-block {
  max-width: 520px;
}

.footer-description {
  color: rgba(255,255,255,0.76);
  font-size: 15px;
  line-height: 1.85;
  margin: 0;
}

.footer-trust-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}

.footer-trust-pills span {
  display: inline-flex;
  align-items: center;
  padding: 9px 13px;
  border-radius: 999px;
  background: rgba(255,216,107,0.10);
  border: 1px solid rgba(255,216,107,0.14);
  color: #ffd86b;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: 0.4px;
}

.footer-links-block h4 {
  margin-bottom: 18px;
  color: #ffffff;
  font-size: 20px;
  line-height: 1.3;
  font-family: var(--secondfont);
  font-weight: 700;
}

.footer-links-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 12px;
}

.footer-links-list li {
  margin: 0;
}

.footer-links-list a {
  color: rgba(255,255,255,0.78);
  font-size: 15px;
  line-height: 1.6;
  text-decoration: none;
  transition: color 0.3s ease, transform 0.3s ease;
  display: inline-flex;
  align-items: center;
}

.footer-links-list a:hover {
  color: #ffd86b;
  transform: translateX(3px);
}

.footer-links-list-small a {
  font-size: 14px;
}

.footer-bottom {
  position: relative;
  z-index: 2;
  border-top: 1px solid rgba(255,255,255,0.08);
  padding: 22px 0 28px;
}

.footer-bottom-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
}

.footer-bottom-text {
  max-width: 760px;
  color: rgba(255,255,255,0.62);
  font-size: 13px;
  line-height: 1.7;
}

.footer-copy {
  color: rgba(255,255,255,0.72);
  font-size: 14px;
  line-height: 1.5;
  white-space: nowrap;
}

@media (max-width: 991px) {
  .footer-main {
    padding: 56px 0 36px;
  }

  .footer-bottom-inner {
    align-items: flex-start;
    flex-direction: column;
  }

  .footer-copy {
    white-space: normal;
  }

}

@media (max-width: 767px) {
  .footer-main {
    padding: 46px 0 28px;
  }

  .footer-links-block h4 {
    font-size: 18px;
    margin-bottom: 14px;
  }

  .footer-description, .footer-links-list a {
    font-size: 14px;
  }

  .footer-bottom-text, .footer-copy {
    font-size: 13px;
  }

}

:root {
  --page-bg: #f7f3ee;
  --surface: #fffcf8;
  --section-alt: #f1ecf7;
  --ink: #29163f;
  --text: #302a35;
  --muted: #6c6270;
  --purple: #8442c4;
  --purple-hover: #69319f;
  --purple-soft: #b58adb;
  --champagne: #d8b873;
  --light-border: #ded4e3;
  --dark-panel: #352342;
  --dark-panel-alt: #463151;
  --body-bg: var(--page-bg);
  --head-bg: var(--surface);
  --card-alt-bg: var(--surface);
  --para-text: var(--text);
  --head-text: var(--ink);
  --nav-text: var(--ink);
  --nav-alt-text: var(--purple);
  --prime-bg: var(--purple);
  --prime-btn: var(--purple);
  --prime-btn2: var(--purple-hover);
  --prime-border: var(--purple-soft);
  --second-border: var(--champagne);
  --icon-bg: var(--purple);
  --icon-alt-bg: var(--section-alt);
}

html, body, body.body-bg, [data-jackpotdeck-theme="dark"] body, [data-jackpotdeck-theme="dark"] .body-bg {
  background: var(--page-bg);
  color: var(--text);
}

[data-logo="dark"] {
  display: block !important;
}

[data-logo="light"] {
  display: none !important;
}

:root {
  --white-text: #ffffff;
}

/* Romibet header and hero light treatment */
body > header, body > header.fix {
  background: rgba(255, 255, 255, 0.88) !important;
  border-bottom-color: rgba(89, 45, 145, 0.12) !important;
}

body > header:not(.fix) {
  position: relative !important;
}

body > header:not(.fix) + .hero-banner {
  margin-top: 0;
  background-position: center top;
}

body > header .navbar .nav-link, body > header.fix .navbar .nav-link {
  color: #241536 !important;
}

body > header .navbar .nav-item.active .nav-link, body > header .navbar .nav-link:hover, body > header.fix .navbar .nav-link:hover {
  color: #7439ad !important;
}

body > header .offcanvas, body > header .offcanvas-body, body > header .offcanvas-header {
  background-color: #fbf9ff !important;
}

@media (min-width: 992px) {
  body > header:not(.fix) + .hero-banner {
    width: 100%;
    min-height: 0;
    aspect-ratio: 1672 / 941;
    background-position: center center;
    background-size: 100% 100%;
  }

}

/* Romibet Games */
.romibet-games {
  color: #2a193c;
  background: linear-gradient(180deg, #fff 0%, #faf7ff 55%, #f3ecfb 100%) !important;
  overflow: hidden;
  scroll-margin-top: 92px;
  padding-block: 34px !important;
}

.romibet-games > .container {
  max-width: min(1540px, calc(100% - 96px));
}

.games-intro {
  display: grid;
  grid-template-columns: minmax(420px, .9fr) minmax(520px, 1.1fr);
  column-gap: clamp(36px, 6vw, 100px);
  align-items: end;
  max-width: 1420px;
  margin-bottom: 20px;
  text-align: left !important;
}

.games-eyebrow {
  grid-column: 1 / -1;
  display: inline-block;
  margin-bottom: 6px;
  color: #7a3eb2;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.games-intro h2 {
  margin: 0;
  color: #261437;
  font-family: var(--secondfont);
  font-size: clamp(2.25rem, 4vw, 4rem);
  line-height: 1;
}

.games-intro h2 span {
  color: #7839b2;
}

.games-intro > p {
  margin: 0 0 2px;
  line-height: 1.55;
}

.games-intro p, .games-category-head p, .games-category-more p, .slot-subcopy {
  color: #5b4c68;
}

.games-tabs {
  display: flex;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  position: relative;
  z-index: 2;
}

.games-tab, .slot-subtab, .games-more {
  border: 1px solid #ded3eb;
  border-radius: 999px;
  color: #422758;
  background: #fff;
  font-weight: 750;
  cursor: pointer;
  transition: .2s ease;
  box-shadow: 0 7px 20px rgba(74,35,108,.06);
}

.games-tab {
  padding: 12px 17px;
}

.games-tab i, .slot-subtab i {
  display: none;
}

.games-tab:hover, .slot-subtab:hover, .games-more:hover {
  border-color: #9c65c8;
  transform: translateY(-1px);
}

.games-tab:focus-visible, .slot-subtab:focus-visible, .games-more:focus-visible, .game-card:focus-visible, .game-detail-close:focus-visible {
  outline: 3px solid #bd83ea;
  outline-offset: 3px;
}

.games-tab.is-active, .slot-subtab.is-active {
  border-color: #7637ad;
  color: #fff;
  background: linear-gradient(135deg,#6e2fa7,#9657c9);
  box-shadow: 0 12px 30px rgba(92,43,135,.22);
}

.games-tab.is-active i, .slot-subtab.is-active i {
  display: inline-block;
  margin-right: 6px;
}

.games-panel {
  margin-top: -1px;
  padding: 24px;
  border: 1px solid #ded3eb;
  border-radius: 28px;
  background: rgba(255,255,255,.92) !important;
  box-shadow: 0 22px 60px rgba(71,34,103,.1);
}

.games-panel[hidden], .games-grid[hidden], .slot-subcopy[hidden], .game-detail[hidden], .games-category-more[hidden] {
  display: none !important;
}

.games-category-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  max-width: 1420px;
  margin: 0 auto 12px;
}

.games-category-head h3 {
  margin: 0 0 5px;
  color: #2a173b;
  font-size: 1.75rem;
}

.games-category-head p {
  margin: 0;
  max-width: 670px;
}

.games-more {
  flex: 0 0 auto;
  padding: 10px 15px;
}

.games-more i {
  margin-left: 7px;
  transition: transform .2s ease;
}

.games-more[aria-expanded="true"] i {
  transform: rotate(180deg);
}

.games-category-more {
  max-width: 1420px;
  margin: 0 auto 16px;
  padding: 16px 18px;
  border-left: 4px solid #9b62c8;
  border-radius: 10px;
  background: #f7f1fc;
}

.games-category-more p {
  margin: 0;
  max-width: 850px;
}

.slot-category-label {
  margin: 17px auto 9px;
  color: #776782;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-align: center;
  text-transform: uppercase;
}

.slot-subtabs {
  display: flex;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
}

.slot-subtab {
  padding: 9px 14px;
}

.slot-subcopy {
  max-width: 760px;
  margin: 12px auto 18px;
  text-align: center;
}

.games-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0,1fr));
  gap: 14px;
  max-width: 1540px;
  margin: 16px auto 0;
}

.game-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  overflow: hidden;
  border: 2px solid transparent;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(56,30,77,.1);
  cursor: pointer;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.game-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 18px 34px rgba(74,35,108,.15);
}

.game-card.is-selected {
  border-color: #7d3bb5;
  box-shadow: 0 0 0 4px rgba(125,59,181,.13),0 18px 34px rgba(74,35,108,.16);
}

.game-card img {
  display: block;
  width: 100%;
  height: auto !important;
  aspect-ratio: 2 / 3;
  object-fit: cover;
  flex: 0 0 auto;
}

.game-card h4 {
  display: flex;
  align-items: center;
  min-height: 56px;
  margin: 0;
  padding: 10px 10px 4px;
  color: #2f1c40;
  font-size: .92rem;
  line-height: 1.2;
}

.game-card button {
  width: calc(100% - 16px);
  margin: auto 8px 8px;
  padding: 8px 7px;
  border: 0;
  border-radius: 9px;
  color: #fff;
  background: #7a3db1;
  font-size: .78rem;
  font-weight: 800;
  cursor: pointer;
}

.game-card button i {
  margin-left: 4px;
}

.game-detail {
  max-width: 1540px;
  margin: 18px auto 0;
  padding: 22px;
  border: 1px solid #d8c8e8;
  border-radius: 18px;
  background: linear-gradient(135deg,#f8f2fd,#fff);
  box-shadow: inset 0 1px #fff;
}

.game-detail-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

.game-detail-head span {
  color: #7c43ad;
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.game-detail h4 {
  margin: 2px 0 0;
  color: #28163a;
  font-size: 1.55rem;
}

.game-detail-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border: 1px solid #d5c5e3;
  border-radius: 50%;
  color: #4d2d65;
  background: #fff;
  cursor: pointer;
}

.game-detail-intro {
  max-width: 780px;
  margin: 13px 0 17px;
  color: #594766;
}

.game-detail-columns {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 14px;
}

.game-detail-columns > div {
  padding: 15px;
  border-radius: 13px;
  background: #fff;
}

.game-detail h5 {
  margin: 0 0 6px;
  color: #43255a;
  font-size: .93rem;
}

.game-detail p {
  margin: 0;
  color: #655570;
  font-size: .91rem;
  line-height: 1.55;
}

@media (max-width: 991px) {
  .romibet-games > .container {
    max-width: calc(100% - 28px);
  }

  .games-intro {
    display: block;
    max-width: 760px;
    text-align: center !important;
  }

  .games-intro h2 {
    margin-bottom: 12px;
  }

  .games-panel {
    padding: 22px 18px;
  }

  .games-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .games-category-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }

  .game-detail-columns {
    grid-template-columns: 1fr;
  }

}

@media (max-width: 575px) {
  .romibet-games {
    padding-block: 42px !important;
  }

  .games-tabs {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .games-tab {
    padding: 10px 8px;
    font-size: .78rem;
  }

  .games-panel {
    margin-top: 10px;
    padding: 18px 10px;
    border-radius: 20px;
  }

  .slot-subtabs {
    display: grid;
    grid-template-columns: 1fr;
  }

  .games-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
  }

  .game-card h4 {
    min-height: 54px;
    font-size: .84rem;
  }

  .game-detail {
    padding: 17px 14px;
  }

}

/* Live Games aligned with the Games section */
.romibet-live {
  padding-block: 34px !important;
  font-family: var(--firstfont);
}

.romibet-live > .container {
  max-width: min(1540px,calc(100% - 96px));
}

.live-intro-grid {
  display: block;
  max-width: 980px;
  margin: 0 auto 22px;
  text-align: center;
}

.live-intro-grid h2 {
  margin-bottom: 12px;
  font-family: var(--secondfont);
  font-size: clamp(2.25rem,4vw,4rem);
}

.live-intro-grid > p {
  max-width: 850px;
  margin: auto;
}

.live-compare {
  display: flex;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  overflow: visible;
  max-width: none;
  margin-bottom: 0;
  border: 0;
  background: transparent;
}

.live-tab {
  display: inline-flex;
  width: auto;
  grid-template-columns: none;
  gap: 0;
  padding: 12px 17px;
  border: 1px solid #ded3eb;
  border-radius: 999px;
  color: #422758;
  background: #fff;
  box-shadow: 0 7px 20px rgba(74,35,108,.06);
  font-weight: 750;
}

.live-tab i {
  display: none;
}

.live-tab span {
  display: none;
}

.live-tab strong {
  color: inherit;
}

.live-tab.is-active {
  color: #fff;
  border-color: #7637ad;
  background: linear-gradient(135deg,#6e2fa7,#9657c9);
  box-shadow: 0 12px 30px rgba(92,43,135,.22);
}

.live-tab.is-active::before {
  content: "✓";
  margin-right: 6px;
}

.live-catalogue {
  max-width: none;
  margin-top: -1px;
  padding: 24px;
  border: 1px solid #ded3eb;
  border-radius: 28px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 22px 60px rgba(71,34,103,.1);
}

.live-category {
  display: block;
  max-width: 1540px;
  margin: auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.live-category header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  max-width: 1420px;
  margin: 0 auto 16px;
}

.live-category header > span {
  display: none;
}

.live-category h3 {
  flex: 0 0 auto;
  font-family: var(--firstfont);
  font-size: 1.75rem;
}

.live-category header p {
  max-width: 860px;
  margin: 0;
  text-align: right;
}

.live-card-grid {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  gap: 14px;
}

.live-game-card {
  display: flex;
  flex-direction: column;
  border: 2px solid transparent;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(56,30,77,.1);
}

.live-game-card img {
  width: 100%;
  height: auto !important;
  aspect-ratio: 2 / 3;
}

.live-game-card strong {
  min-height: 56px;
  padding: 10px 10px 4px;
  color: #2f1c40;
  font-family: var(--firstfont);
  font-size: .92rem;
}

.live-game-card span {
  margin-top: auto;
  padding: 0 10px 11px;
  color: #7b6986;
  font-family: var(--firstfont);
  font-size: .74rem;
}

.live-game-card button {
  width: calc(100% - 16px);
  margin: 0 8px 8px;
  padding: 8px 7px;
  border: 0;
  border-radius: 9px;
  color: #fff;
  background: #7a3db1;
  font-size: .78rem;
  font-weight: 800;
  cursor: pointer;
}

.live-game-card.is-selected {
  border-color: #7d3bb5;
  box-shadow: 0 0 0 4px rgba(125,59,181,.13),0 18px 34px rgba(74,35,108,.16);
}

.live-category-more {
  margin: 0 auto 16px;
  padding: 14px 17px;
  border-left: 4px solid #9b62c8;
  border-radius: 10px;
  background: #f7f1fc;
  color: #5b4c68;
}

.live-category-more[hidden], .live-detail[hidden] {
  display: none !important;
}

.live-category-more p {
  margin: 0;
}

.live-detail {
  max-width: 1540px;
}

.live-guide {
  max-width: 1540px;
}

@media (max-width: 991px) {
  .romibet-live > .container {
    max-width: calc(100% - 28px);
  }

  .live-card-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .live-category header {
    align-items: flex-start;
    flex-direction: column;
    gap: 7px;
  }

  .live-category header p {
    text-align: left;
  }

}

@media (max-width: 575px) {
  .live-compare {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .live-tab {
    justify-content: center;
    padding: 10px 7px;
    font-size: .78rem;
  }

  .live-catalogue {
    margin-top: 10px;
    padding: 18px 10px;
    border-radius: 20px;
  }

  .live-card-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
  }

  .live-game-card strong {
    min-height: 54px;
    font-size: .84rem;
  }

}

/* Sports section — final layout overrides */
.romibet-sports {
  padding: 74px 0 64px !important;
  overflow: hidden;
  color: #2d1a3d;
  background: linear-gradient(180deg,#fbf9fd 0%,#f5effb 48%,#fff 100%) !important;
  font-family: var(--firstfont);
  scroll-margin-top: 90px;
}

.romibet-sports .sports-content {
  position: relative;
  z-index: 1;
  width: auto;
  max-width: min(1540px,calc(100% - 96px));
  margin: 0 auto;
}

.romibet-sports .sports-content p,.romibet-sports .sports-content span,.romibet-sports .sports-content strong,.romibet-sports .sports-content h3 {
  width: auto;
  max-width: none;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
  writing-mode: horizontal-tb;
}

.romibet-sports .sports-intro {
  display: grid;
  grid-template-columns: minmax(380px,.82fr) minmax(460px,1.18fr);
  gap: clamp(40px,7vw,110px);
  align-items: end;
  max-width: 1440px;
  margin: 0 auto 32px;
}

.romibet-sports .sports-intro > div {
  min-width: 0;
}

.romibet-sports .sports-intro span,.romibet-sports .sports-perspectives span,.romibet-sports .sports-formats > article > span {
  display: block;
  color: #8242b7;
  font-size: .78rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.romibet-sports .sports-intro h2 {
  margin: 9px 0 0;
  color: #281638;
  font-family: var(--secondfont);
  font-size: clamp(2.65rem,4.4vw,5rem);
  line-height: .98;
}

.romibet-sports .sports-intro h2 em {
  color: #8442bb;
  font-style: normal;
}

.romibet-sports .sports-intro-copy p {
  margin: 0;
  color: #5e5068;
  font-size: 1.05rem;
  line-height: 1.68;
}

.romibet-sports .sports-intro-copy p + p {
  margin-top: 12px;
}

.romibet-sports .sports-visual {
  position: relative;
  min-height: 0;
  height: clamp(330px,32vw,520px);
  margin: 0;
  overflow: hidden;
  border: 1px solid #e3d8eb;
  border-radius: 34px;
  background: #fff;
  box-shadow: 0 25px 65px rgba(67,31,96,.12);
}

.romibet-sports .sports-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,rgba(255,255,255,.18),transparent 28%,transparent 72%,rgba(255,255,255,.18)),linear-gradient(0deg,rgba(255,255,255,.32),transparent 32%);
  pointer-events: none;
}

.romibet-sports .sports-visual > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: .82;
  filter: saturate(.8) contrast(.94) brightness(1.04);
}

.romibet-sports .sports-visual figcaption {
  position: absolute;
  z-index: 2;
  left: 50%;
  bottom: 20px;
  transform: translateX(-50%);
  padding: 9px 16px;
  border: 1px solid rgba(121,65,161,.16);
  border-radius: 999px;
  color: #513262;
  background: rgba(255,255,255,.84);
  backdrop-filter: blur(10px);
  font-size: .82rem;
  font-weight: 800;
  white-space: nowrap;
}

.romibet-sports .sports-perspectives {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 16px;
  margin: 22px 0 16px;
}

.romibet-sports .sports-perspectives article {
  display: grid;
  grid-template-columns: 52px minmax(0,1fr);
  gap: 18px;
  padding: 27px;
  border: 1px solid #dfd3e9;
  border-radius: 24px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 14px 34px rgba(67,31,96,.08);
}

.romibet-sports .sports-perspectives article > i {
  display: grid;
  width: 52px;
  height: 52px;
  place-items: center;
  border-radius: 16px;
  color: #fff;
  background: linear-gradient(135deg,#7332a9,#a15bd0);
  font-size: 1.1rem;
}

.romibet-sports .sports-perspectives h3 {
  margin: 6px 0 8px;
  color: #301c40;
  font-size: 1.45rem;
}

.romibet-sports .sports-perspectives p {
  margin: 0;
  color: #65566f;
  font-size: .98rem;
  line-height: 1.62;
}

.romibet-sports .sports-formats {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 1px;
  overflow: hidden;
  margin: 0;
  border: 1px solid #ded2e8;
  border-radius: 24px;
  background: #ded2e8;
}

.romibet-sports .sports-formats article {
  min-width: 0;
  padding: 24px;
  background: #fff;
}

.romibet-sports .sports-formats h3 {
  display: flex;
  gap: 9px;
  align-items: center;
  margin: 7px 0 9px;
  color: #321e43;
  font-size: 1.3rem;
}

.romibet-sports .sports-formats h3 i {
  color: #8441b8;
  font-size: 1rem;
}

.romibet-sports .sports-formats p {
  margin: 0;
  color: #6b5b75;
  font-size: 1rem;
  line-height: 1.58;
}

.romibet-sports .sports-market-note {
  display: grid;
  grid-template-columns: minmax(230px,.55fr) minmax(0,1.45fr);
  gap: 35px;
  align-items: center;
  margin: 16px 0;
  padding: 22px 26px;
  border-radius: 20px;
  color: #fff;
  background: linear-gradient(120deg,#2b193b,#67318d);
}

.romibet-sports .sports-market-note strong {
  font-size: 1.25rem;
}

.romibet-sports .sports-market-note p {
  margin: 0;
  color: rgba(255,255,255,.82);
  font-size: .96rem;
  line-height: 1.6;
}

.romibet-sports .sports-guide-wrap {
  text-align: center;
}

.romibet-sports .sports-guide-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 14px 22px;
  border: 0;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg,#7433aa,#9952c8);
  box-shadow: 0 12px 28px rgba(105,47,149,.2);
  font-size: .96rem;
  font-weight: 850;
  cursor: pointer;
}

.romibet-sports .sports-guide-toggle i {
  margin: 0;
  transition: transform .2s ease;
}

.romibet-sports .sports-guide-toggle[aria-expanded="true"] i {
  transform: rotate(180deg);
}

.romibet-sports .sports-guide-details {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
  margin-top: 18px;
  text-align: left;
}

.romibet-sports .sports-guide-details[hidden] {
  display: none !important;
}

.romibet-sports .sports-guide-details > article {
  display: grid;
  grid-template-columns: 44px minmax(0,1fr);
  gap: 14px;
  min-width: 0;
  padding: 20px;
  border: 1px solid #e0d5e8;
  border-radius: 18px;
  background: #fff;
}

.romibet-sports .sports-guide-details > article > i,.romibet-sports .sports-guide-details > article > svg {
  display: grid;
  width: 44px;
  height: 44px;
  padding: 13px;
  place-items: center;
  border-radius: 13px;
  color: #8241b7;
  background: #f1e7f8;
  box-sizing: border-box;
}

.romibet-sports .sports-guide-details h3 {
  margin: 1px 0 6px;
  color: #352046;
  font-size: 1.1rem;
}

.romibet-sports .sports-guide-details p {
  margin: 0;
  color: #6a5a73;
  font-size: 1rem;
  line-height: 1.58;
}

.romibet-sports .sports-guide-details .sports-guide-wide {
  grid-column: 1 / -1;
}

.romibet-sports .sports-promo-note {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(180px,.35fr) minmax(0,1.65fr);
  gap: 22px;
  align-items: center;
  padding: 20px 24px;
  border: 1px dashed #ae80cc;
  border-radius: 18px;
  background: #f7f0fb;
}

.romibet-sports .sports-promo-note strong {
  color: #4a2b60;
  font-size: 1.1rem;
}

.romibet-sports .sports-promo-note p {
  margin: 0;
}

@media (max-width: 991px) {
  .romibet-sports {
    padding-top: 52px !important;
  }

  .romibet-sports .sports-content {
    max-width: calc(100% - 28px);
  }

  .romibet-sports .sports-intro {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .romibet-sports .sports-formats {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

}

@media (max-width: 650px) {
  .romibet-sports .sports-intro h2 {
    font-size: 2.55rem;
  }

  .romibet-sports .sports-visual {
    height: 310px;
    border-radius: 24px;
  }

  .romibet-sports .sports-visual figcaption {
    bottom: 12px;
    max-width: calc(100% - 24px);
    font-size: .72rem;
    white-space: normal;
    text-align: center;
  }

  .romibet-sports .sports-perspectives,.romibet-sports .sports-formats,.romibet-sports .sports-guide-details {
    grid-template-columns: 1fr;
  }

  .romibet-sports .sports-perspectives article {
    grid-template-columns: 44px minmax(0,1fr);
    padding: 21px 17px;
  }

  .romibet-sports .sports-perspectives article > i {
    width: 44px;
    height: 44px;
  }

  .romibet-sports .sports-formats article {
    padding: 20px 18px;
  }

  .romibet-sports .sports-market-note,.romibet-sports .sports-promo-note {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .romibet-sports .sports-guide-details .sports-guide-wide,.romibet-sports .sports-promo-note {
    grid-column: auto;
  }

}

/* Sports opening and category colour treatment */
.romibet-sports {
  padding-top: 34px !important;
}

.romibet-sports .sports-visual {
  height: clamp(470px,42vw,650px);
}

.romibet-sports .sports-visual > img {
  opacity: .88;
  filter: saturate(.88) contrast(.97) brightness(1.02);
}

.romibet-sports .sports-visual::after {
  z-index: 1;
  background:
    radial-gradient(circle at 50% 47%, rgba(255, 255, 255, .96) 0%, rgba(255, 255, 255, .86) 25%, rgba(255, 255, 255, .34) 49%, rgba(255, 255, 255, .08) 72%),
    linear-gradient(0deg, rgba(255, 255, 255, .28), transparent 40%);
}

.romibet-sports .sports-visual-copy {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  width: min(690px,58%);
  transform: translate(-50%,-50%);
  text-align: center;
}

.romibet-sports .sports-visual-copy > span {
  display: inline-block;
  margin-bottom: 12px;
  padding: 8px 14px;
  border: 1px solid rgba(126,61,177,.2);
  border-radius: 999px;
  color: #7d3eb2;
  background: rgba(255,255,255,.84);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.romibet-sports .sports-visual-copy h2 {
  margin: 0;
  color: #29173a;
  font-family: var(--secondfont);
  font-size: clamp(3rem,5vw,5.6rem);
  line-height: .93;
}

.romibet-sports .sports-visual-copy h2 em {
  color: #8140b7;
  font-style: normal;
}

.romibet-sports .sports-visual-copy > p {
  max-width: 650px;
  margin: 20px auto 0;
  color: #55455f;
  font-size: 1.08rem;
  line-height: 1.6;
}

.romibet-sports .sports-visual-pills {
  display: flex;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 18px;
}

.romibet-sports .sports-visual-pills span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 9px 13px;
  border: 1px solid rgba(120,66,157,.17);
  border-radius: 999px;
  color: #442b55;
  background: rgba(255,255,255,.9);
  box-shadow: 0 7px 18px rgba(68,35,90,.07);
  font-size: .82rem;
  font-weight: 800;
}

.romibet-sports .sports-visual-pills i {
  color: #8645b9;
}

.romibet-sports .sports-opening-copy {
  display: grid;
  grid-template-columns: minmax(280px,.65fr) minmax(0,1.35fr);
  gap: clamp(28px,5vw,75px);
  align-items: center;
  margin: 20px 0 16px;
  padding: 28px 32px;
  border: 1px solid #dfd4e8;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(67,31,96,.07);
}

.romibet-sports .sports-opening-copy strong {
  color: #352047;
  font-size: clamp(1.35rem,2vw,1.85rem);
  line-height: 1.25;
}

.romibet-sports .sports-opening-copy p {
  margin: 0;
  color: #62536c;
  font-size: 1.02rem;
  line-height: 1.66;
}

.romibet-sports .sports-guide-details > article:nth-of-type(1) > :is(i,svg) {
  color:#2879c7;
  background:#e5f3ff;
}

.romibet-sports .sports-guide-details > article:nth-of-type(2) > :is(i,svg) {
  color:#2d9c57;
  background:#e4f8eb;
}

.romibet-sports .sports-guide-details > article:nth-of-type(3) > :is(i,svg) {
  color:#e78622;
  background:#fff0dd;
}

.romibet-sports .sports-guide-details > article:nth-of-type(4) > :is(i,svg) {
  color:#d84d4d;
  background:#ffe7e7;
}

.romibet-sports .sports-guide-details > article:nth-of-type(5) > :is(i,svg) {
  color:#7b4ac7;
  background:#eee6ff;
}

.romibet-sports .sports-guide-details > article:nth-of-type(6) > :is(i,svg) {
  color:#d43d75;
  background:#ffe6ef;
}

.romibet-sports .sports-guide-details > article:nth-of-type(7) > :is(i,svg) {
  color:#18a19a;
  background:#dff8f6;
}

.romibet-sports .sports-guide-details > article:nth-of-type(8) > :is(i,svg) {
  color:#5267d6;
  background:#e7eaff;
}

.romibet-sports .sports-guide-details > article:nth-of-type(9) > :is(i,svg) {
  color:#a06a16;
  background:#fff2d3;
}

@media (max-width: 991px) {
  .romibet-sports {
    padding-top: 24px !important;
  }

  .romibet-sports .sports-visual-copy {
    width: min(700px,76%);
  }

  .romibet-sports .sports-opening-copy {
    grid-template-columns: 1fr;
    gap: 12px;
  }

}

@media (max-width: 650px) {
  .romibet-sports .sports-visual {
    height: 590px;
  }

  .romibet-sports .sports-visual-copy {
    width: calc(100% - 34px);
  }

  .romibet-sports .sports-visual-copy h2 {
    font-size: 2.8rem;
  }

  .romibet-sports .sports-visual-copy > p {
    font-size: .98rem;
  }

  .romibet-sports .sports-visual-pills {
    margin-top: 14px;
  }

  .romibet-sports .sports-opening-copy {
    padding: 22px 18px;
  }

}

/* Romibet bonuses — rebuilt after loyalty */
.romibet-bonuses.bonuses-v2 {
  padding:82px 0;
  background:linear-gradient(180deg,#f1f5f8 0%,#fff 34%,#f8f5f1 100%)!important;
  color:#2c193d;
  font-family:var(--firstfont);
  scroll-margin-top:90px;
  border-top:14px solid #23384d
}

.bonuses-v2 .bonuses-shell {
  max-width:min(1540px,calc(100% - 96px))
}

.bonus-v2-heading {
  display:grid;
  grid-template-columns:minmax(430px,.9fr) minmax(430px,1.1fr);
  gap:20px clamp(50px,8vw,125px);
  align-items:end;
  margin:0 auto 34px;
  padding:0 24px;
  max-width:1480px
}

.bonus-v2-heading>div>span {
  display:flex;
  align-items:center;
  gap:9px;
  color:#8341b6;
  font-size:.8rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase
}

.bonus-v2-heading h2 {
  margin:10px 0 0;
  color:#2c193d!important;
  font-family:var(--secondfont);
  font-size:clamp(3rem,4.8vw,5.4rem);
  line-height:.94
}

.bonus-v2-heading h2 em {
  color:#8743ba;
  font-style:normal
}

.bonus-v2-heading>p {
  margin:0;
  color:#65556e;
  font-size:1.08rem;
  line-height:1.68
}

.bonus-v2-welcome {
  display:grid;
  grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr);
  gap:34px;
  padding:38px;
  border-radius:34px;
  color:#fff;
  background:radial-gradient(circle at 8% 5%,rgba(211,167,91,.25),transparent 27%),linear-gradient(125deg,#172638,#263f58 58%,#526b78);
  box-shadow:0 25px 65px rgba(27,48,67,.2)
}

.bonus-v2-offer {
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:10px
}

.bonus-v2-offer>span {
  align-self:flex-start;
  padding:8px 13px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(255,255,255,.09);
  font-size:.75rem;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase
}

.bonus-v2-offer h3 {
  margin:18px 0 0;
  color:#fff;
  font-family:var(--secondfont);
  font-size:clamp(3rem,4.7vw,5.3rem);
  line-height:.88
}

.bonus-v2-offer h3 small {
  font-family:var(--firstfont);
  font-size:.3em
}

.bonus-v2-offer>strong {
  margin-top:9px;
  color:#f1cf8e;
  font-size:1.4rem
}

.bonus-v2-offer>p {
  margin:20px 0 0;
  color:rgba(255,255,255,.78);
  line-height:1.65
}

.bonus-v2-facts {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:23px
}

.bonus-v2-facts span {
  padding:9px 12px;
  border-radius:999px;
  color:#422655;
  background:#fff;
  font-size:.79rem;
  font-weight:850
}

.bonus-v2-timeline {
  display:grid;
  gap:12px
}

.bonus-v2-timeline article {
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:15px;
  align-items:center;
  padding:20px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:20px;
  background:rgba(255,255,255,.09)
}

.bonus-v2-timeline i,.bonus-v2-timeline svg {
  width:20px;
  height:20px;
  padding:13px;
  border-radius:14px;
  color:#31516b;
  background:#fff;
  box-sizing:content-box
}

.bonus-v2-timeline strong {
  display:block;
  color:#fff;
  font-size:1.08rem
}

.bonus-v2-timeline p {
  margin:5px 0 0;
  color:rgba(255,255,255,.72);
  font-size:.91rem;
  line-height:1.48
}

.bonus-v2-selector {
  display:flex;
  justify-content:center;
  gap:9px;
  flex-wrap:wrap;
  margin:28px 0 0
}

.bonus-tab {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:13px 19px;
  border:1px solid #d9cbe4;
  border-radius:999px;
  color:#492c5e;
  background:#fff;
  font-weight:850;
  cursor:pointer
}

.bonus-tab.is-active {
  color:#fff;
  border-color:#29465e;
  background:linear-gradient(135deg,#213b52,#477189);
  box-shadow:0 11px 27px rgba(34,63,84,.2)
}

.bonus-v2-panel {
  margin-top:16px;
  padding:30px;
  border:1px solid #ddcfe7;
  border-radius:30px;
  background:#fff;
  box-shadow:0 22px 58px rgba(67,31,94,.1)
}

.bonus-v2-panel[hidden] {
  display:none!important
}

.bonus-v2-panel-heading {
  display:grid;
  grid-template-columns:minmax(310px,.72fr) minmax(0,1.28fr);
  gap:48px;
  align-items:end;
  margin-bottom:22px
}

.bonus-v2-panel-heading span {
  color:#8743ba;
  font-size:.75rem;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase
}

.bonus-v2-panel-heading h3 {
  margin:5px 0 0;
  color:#342044;
  font-size:1.9rem
}

.bonus-v2-panel-heading p {
  margin:0;
  color:#685970;
  line-height:1.6
}

.bonus-v2-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px
}

.bonus-v2-grid article {
  position:relative;
  min-width:0;
  padding:24px;
  overflow:hidden;
  border:1px solid #e1d6e8;
  border-radius:22px;
  background:linear-gradient(145deg,#fff,#faf7fc);
  box-shadow:0 11px 27px rgba(57,27,79,.06)
}

.bonus-v2-grid article:before {
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:6px;
  background:var(--offer,#8141b5)
}

.bonus-v2-grid article>i,.bonus-v2-grid article>svg {
  width:22px;
  height:22px;
  padding:12px;
  border-radius:14px;
  color:var(--offer,#8141b5);
  background:#f2e9f8;
  box-sizing:content-box
}

.bonus-v2-grid article>span {
  display:block;
  margin-top:17px;
  color:var(--offer,#8141b5);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase
}

.bonus-v2-grid h4 {
  margin:6px 0;
  color:#342044;
  font-size:1.3rem
}

.bonus-v2-grid strong {
  display:block;
  color:#4d2c62;
  font-size:1.02rem
}

.bonus-v2-grid p {
  margin:12px 0 0;
  color:#6a5b73;
  font-size:.92rem;
  line-height:1.58
}

.bonus-v2-extras h4 {
  margin-top:17px
}

.bonus-v2-rules {
  max-width:1250px;
  margin:18px auto 0;
  overflow:hidden;
  border:1px solid #dacde5;
  border-radius:21px;
  background:#fff
}

.bonus-v2-rules summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px 22px;
  color:#3f2752;
  font-weight:900;
  cursor:pointer;
  list-style:none
}

.bonus-v2-rules summary::-webkit-details-marker {
  display:none
}

.bonus-v2-rules[open] summary i,.bonus-v2-rules[open] summary svg {
  transform:rotate(180deg)
}

.bonus-v2-rules>div {
  padding:0 22px 20px
}

.bonus-v2-rules p {
  margin:0;
  color:#685970;
  line-height:1.6
}

.bonus-v2-rules p+p {
  margin-top:9px
}

@media(max-width:1100px) {
  .bonus-v2-heading,.bonus-v2-welcome {
    grid-template-columns:1fr
  }

  .bonus-v2-heading {
    gap:16px
  }

  .bonus-v2-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }

  .bonus-v2-panel-heading {
    grid-template-columns:1fr;
    gap:9px
  }

}

@media(max-width:700px) {
  .romibet-bonuses.bonuses-v2 {
    padding:55px 0
  }

  .bonuses-v2 .bonuses-shell {
    max-width:calc(100% - 26px)
  }

  .bonus-v2-heading {
    padding:0
  }

  .bonus-v2-heading h2 {
    font-size:2.8rem
  }

  .bonus-v2-welcome {
    padding:22px 16px;
    border-radius:25px
  }

  .bonus-v2-grid {
    grid-template-columns:1fr
  }

  .bonus-v2-selector {
    display:grid
  }

  .bonus-tab {
    justify-content:center
  }

  .bonus-v2-panel {
    padding:21px 13px
  }

  .bonus-v2-timeline article {
    padding:17px 13px
  }

}

/* Romibet VIP programme */
.romibet-bonuses {
  border-bottom:14px solid #23384d;
}

.romibet-vip {
  padding:0 0 78px;
  color:#2c193d;
  background:linear-gradient(180deg,#f1e7f8 0%,#fff 18%,#f2eaf9 100%) !important;
  font-family:var(--firstfont);
  scroll-margin-top:90px;
}

.romibet-vip .vip-shell {
  max-width:min(1540px,calc(100% - 96px));
}

.vip-section-banner {
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:22px;
  align-items:center;
  margin:0 -12px 58px;
  padding:25px 34px;
  border-radius:0 0 28px 28px;
  color:#fff;
  background:linear-gradient(110deg,#241333,#3c2051 60%,#8141b5);
  box-shadow:0 18px 44px rgba(53,24,73,.2);
}

.vip-section-banner>div {
  display:flex;
  align-items:center;
  gap:11px
}

.vip-section-banner i,.vip-section-banner svg {
  font-size:1.35rem;
  color:#e2bd51
}

.vip-section-banner span {
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase
}

.vip-section-banner>strong {
  font-family:var(--secondfont);
  font-size:clamp(2rem,3vw,3.45rem);
  text-transform:uppercase
}

.vip-section-banner>em {
  padding:10px 15px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:999px;
  font-style:normal;
  font-weight:850;
  white-space:nowrap
}

.vip-intro {
  display:grid;
  grid-template-columns:minmax(430px,.9fr) minmax(430px,1.1fr);
  gap:clamp(45px,8vw,130px);
  align-items:end;
  max-width:1450px;
  margin:0 auto 34px;
}

.vip-intro > div {
  min-width:0;
}

.vip-intro > div:first-child span,.vip-cashback-copy>span {
  color:#8241b6;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.vip-intro h2 {
  margin:9px 0 0;
  font-family:var(--secondfont);
  font-size:clamp(2.8rem,4.4vw,5rem);
  line-height:.96;
}

.vip-intro h2 em {
  color:#8442b9;
  font-style:normal
}

.vip-intro p {
  margin:0;
  color:#64556e;
  font-size:1.03rem;
  line-height:1.67;
}

.vip-intro p+p {
  margin-top:10px
}

.vip-explorer {
  display:grid;
  grid-template-columns:minmax(280px,.34fr) minmax(0,1.66fr);
  overflow:hidden;
  border:1px solid #ddcfe8;
  border-radius:31px;
  background:#fff;
  box-shadow:0 24px 65px rgba(65,30,91,.13);
}

.vip-level-rail {
  display:flex;
  flex-direction:column;
  padding:15px;
  background:#2a183a;
}

.vip-level-tab {
  position:relative;
  display:grid;
  grid-template-columns:1fr auto;
  gap:2px 12px;
  flex:1;
  min-height:88px;
  padding:16px 17px;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.1);
  color:#fff;
  background:transparent;
  text-align:left;
  cursor:pointer;
}

.vip-level-tab:last-child {
  border-bottom:0
}

.vip-level-tab span {
  color:#cda9e5;
  font-size:.73rem;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase
}

.vip-level-tab strong {
  font-size:1rem
}

.vip-level-tab i,.vip-level-tab svg {
  grid-column:2;
  grid-row:1/3;
  align-self:center;
  color:#bb8bd9;
  transition:transform .2s
}

.vip-level-tab.is-active {
  border-radius:17px;
  background:linear-gradient(135deg,#7838ad,#a15bcf);
  box-shadow:0 13px 30px rgba(0,0,0,.2);
}

.vip-level-tab.is-active i,.vip-level-tab.is-active svg {
  transform:translateX(4px);
  color:#fff
}

.vip-stage {
  position:relative;
  min-height:590px;
  background:radial-gradient(circle at 88% 18%,#eadcf4 0,transparent 28%),linear-gradient(140deg,#fff,#f7f1fb);
}

.vip-level-panel {
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:38px;
  align-items:center;
  min-height:590px;
  padding:clamp(35px,4vw,66px);
}

.vip-level-panel[hidden] {
  display:none!important
}

.vip-level-mark {
  display:flex;
  width:174px;
  height:174px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1px solid #d7c5e5;
  border-radius:50%;
  color:#fff;
  background:linear-gradient(145deg,#2a183a,#8642b9);
  box-shadow:0 20px 45px rgba(71,32,99,.25),inset 0 0 0 10px rgba(255,255,255,.08);
}

.vip-level-mark small {
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.2em
}

.vip-level-mark strong {
  font-family:var(--secondfont);
  font-size:6rem;
  line-height:.85
}

.vip-level-copy>span {
  color:#8847bb;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase
}

.vip-level-copy h3 {
  max-width:760px;
  margin:8px 0 14px;
  font-family:var(--secondfont);
  font-size:clamp(2.3rem,3.5vw,4rem);
  line-height:1
}

.vip-level-copy>p {
  max-width:820px;
  margin:0;
  color:#675770;
  font-size:1.02rem;
  line-height:1.67
}

.vip-metrics {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:13px;
  margin-top:27px
}

.vip-metrics>div {
  min-height:126px;
  padding:19px 18px;
  border:1px solid #dacbe6;
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 24px rgba(62,29,86,.07)
}

.vip-metrics strong {
  display:block;
  color:#3c2250;
  font-family:var(--secondfont);
  font-size:clamp(1.75rem,2.45vw,3rem);
  line-height:1
}

.vip-metrics span {
  display:block;
  margin-top:12px;
  color:#685671;
  font-size:.91rem;
  font-weight:750;
  line-height:1.35
}

.vip-metrics .is-cashback {
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg,#7333a6,#a25bd0)
}

.vip-metrics .is-cashback strong,.vip-metrics .is-cashback span {
  color:#fff
}

.vip-metrics .is-cashback strong {
  font-size:clamp(3rem,4vw,5rem)
}

.vip-metrics .is-muted {
  background:#f4eff7
}

.vip-metrics .is-muted strong {
  font-size:1.7rem;
  color:#75667e
}

.vip-clarity-note {
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:14px;
  align-items:center;
  margin-top:14px;
  padding:19px 22px;
  border-left:4px solid #8a47ba;
  border-radius:14px;
  background:#fff;
}

.vip-clarity-note>i,.vip-clarity-note>svg {
  color:#8744b9;
  font-size:1.2rem
}

.vip-clarity-note p {
  margin:0;
  color:#66566f;
  line-height:1.58
}

.vip-clarity-note strong {
  color:#3b244d
}

.vip-progress-explained {
  margin-top:20px;
  padding:34px;
  border:1px solid #ddcfe7;
  border-radius:27px;
  background:linear-gradient(135deg,#2b193b 0%,#3e2055 56%,#713398 100%);
  color:#fff;
  box-shadow:0 20px 48px rgba(55,25,76,.15);
}

.vip-progress-heading {
  display:grid;
  grid-template-columns:minmax(310px,.72fr) minmax(0,1.28fr);
  gap:14px 55px;
  align-items:end;
}

.vip-progress-heading>span {
  grid-column:1/-1;
  color:#d7b3ed;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase
}

.vip-progress-heading h3 {
  margin:0;
  color:#fff;
  font-family:var(--secondfont);
  font-size:clamp(2.15rem,3.2vw,3.6rem);
  line-height:1
}

.vip-progress-heading p {
  margin:0;
  color:rgba(255,255,255,.76);
  font-size:1rem;
  line-height:1.65
}

.vip-progress-path {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  overflow:hidden;
  margin-top:28px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:21px;
  background:rgba(255,255,255,.15);
}

.vip-progress-path article {
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:14px;
  padding:22px;
  background:rgba(255,255,255,.08)
}

.vip-progress-path article>i,.vip-progress-path article>svg {
  width:20px;
  height:20px;
  padding:13px;
  border-radius:14px;
  color:#8241b5;
  background:#fff;
  box-sizing:content-box
}

.vip-progress-path strong {
  display:block;
  color:#fff;
  font-size:1.05rem
}

.vip-progress-path p {
  margin:6px 0 0;
  color:rgba(255,255,255,.7);
  font-size:.91rem;
  line-height:1.53
}

.vip-progress-answer {
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  gap:13px;
  align-items:center;
  margin-top:14px;
  padding:16px 18px;
  border-radius:16px;
  color:#3e2550;
  background:#fff
}

.vip-progress-answer>i,.vip-progress-answer>svg {
  color:#8744b9;
  font-size:1.1rem
}

.vip-progress-answer p {
  margin:0;
  line-height:1.56
}

.vip-progress-answer strong {
  color:#2f1c3e
}

.vip-beginner-guide {
  max-width:1280px;
  margin:18px auto 0;
  overflow:hidden;
  border:1px solid #d9cbe5;
  border-radius:22px;
  background:#fff;
  box-shadow:0 13px 32px rgba(61,29,84,.07);
}

.vip-beginner-guide summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px 22px;
  color:#3d2650;
  font-weight:900;
  cursor:pointer;
  list-style:none
}

.vip-beginner-guide summary::-webkit-details-marker {
  display:none
}

.vip-beginner-guide summary i,.vip-beginner-guide summary svg {
  transition:transform .2s
}

.vip-beginner-guide[open] summary i,.vip-beginner-guide[open] summary svg {
  transform:rotate(180deg)
}

.vip-b-content {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  padding:0 18px 18px
}

.vip-b-content article {
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:13px;
  padding:18px;
  border-radius:17px;
  background:#f8f3fc
}

.vip-b-content article>i,.vip-b-content article>svg {
  width:18px;
  height:18px;
  padding:12px;
  border-radius:13px;
  color:#8542b7;
  background:#fff;
  box-sizing:content-box
}

.vip-b-content h4 {
  margin:0 0 6px;
  color:#3a244b;
  font-size:1rem
}

.vip-b-content p {
  margin:0;
  color:#695972;
  font-size:.91rem;
  line-height:1.55
}

@media(max-width:980px) {
  .vip-section-banner {
    grid-template-columns:1fr;
    text-align:center
  }

  .vip-section-banner>div {
    justify-content:center
  }

  .vip-section-banner>em {
    justify-self:center
  }

  .vip-intro {
    grid-template-columns:1fr;
    gap:18px
  }

  .vip-explorer {
    grid-template-columns:1fr
  }

  .vip-level-rail {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:6px
  }

  .vip-level-tab {
    display:flex;
    min-height:0;
    flex-direction:column;
    border:0;
    border-radius:14px;
    text-align:center
  }

  .vip-level-tab strong {
    display:none
  }

  .vip-level-tab i,.vip-level-tab svg {
    display:none
  }

  .vip-metrics {
    grid-template-columns:1fr 1fr
  }

  .vip-metrics>div:last-child {
    grid-column:1/-1
  }

}

@media(max-width:980px) {
  .vip-progress-heading {
    grid-template-columns:1fr;
    gap:12px
  }

  .vip-progress-heading>span {
    grid-column:auto
  }

  .vip-progress-path {
    grid-template-columns:1fr
  }

  .vip-b-content {
    grid-template-columns:1fr
  }

}

@media(max-width:650px) {
  .romibet-vip {
    padding:0 0 54px
  }

  .romibet-vip .vip-shell {
    max-width:calc(100% - 26px)
  }

  .vip-section-banner {
    margin:0 0 40px;
    padding:23px 14px;
    gap:10px
  }

  .vip-section-banner>strong {
    font-size:2rem
  }

  .vip-intro h2 {
    font-size:2.7rem
  }

  .vip-level-rail {
    grid-template-columns:repeat(5,1fr);
    padding:9px
  }

  .vip-level-tab {
    padding:10px 4px
  }

  .vip-level-tab span {
    font-size:.62rem
  }

  .vip-level-panel {
    grid-template-columns:1fr;
    gap:22px;
    min-height:0;
    padding:28px 18px
  }

  .vip-stage {
    min-height:0
  }

  .vip-level-mark {
    width:105px;
    height:105px
  }

  .vip-level-mark strong {
    font-size:3.8rem
  }

  .vip-level-copy h3 {
    font-size:2.35rem
  }

  .vip-metrics {
    grid-template-columns:1fr
  }

  .vip-metrics>div:last-child {
    grid-column:auto
  }

  .vip-progress-explained {
    padding:25px 17px
  }

  .vip-progress-path article {
    padding:18px 14px
  }

  .vip-progress-answer {
    grid-template-columns:1fr
  }

  .vip-clarity-note {
    grid-template-columns:1fr
  }

  .vip-beginner-guide summary {
    padding:17px
  }

  .vip-b-content {
    padding:0 10px 10px
  }

  .vip-b-content article {
    padding:16px 12px
  }

}

@media(max-width:700px) {
  .romibet-games>.container,.romibet-live>.container,.romibet-sports .sports-content {
    max-width:calc(100% - 26px)
  }

}

/* Section palette separation */
.romibet-games {
  background:linear-gradient(180deg,#fffaf1 0%,#f8efe0 58%,#fff 100%)!important;
  color:#3b2b25
}

.romibet-games .games-eyebrow,.romibet-games .games-intro h2 span {
  color:#b55732
}

.romibet-games .games-intro p,.romibet-games .games-category-head p,.romibet-games .games-category-more p,.romibet-games .slot-subcopy {
  color:#6c5a50
}

.romibet-games .games-tab,.romibet-games .slot-subtab,.romibet-games .games-more {
  border-color:#e4d1ba;
  color:#583a2c;
  background:#fffdf9;
  box-shadow:0 7px 20px rgba(112,70,39,.07)
}

.romibet-games .games-tab:is(:hover,.is-active),.romibet-games .slot-subtab:is(:hover,.is-active) {
  border-color:#bb6139
}

.romibet-games .games-tab.is-active,.romibet-games .slot-subtab.is-active {
  color:#fff;
  background:linear-gradient(135deg,#a84629,#d67b3f);
  box-shadow:0 12px 28px rgba(167,72,39,.2)
}

.romibet-games .games-panel {
  border-color:#e5d4c0;
  background:rgba(255,253,248,.96)!important;
  box-shadow:0 22px 55px rgba(105,69,40,.1)
}

.romibet-games .games-category-more {
  border-left-color:#d18249;
  background:#fff4e4
}

.romibet-games .game-card button {
  background:linear-gradient(135deg,#a94a2d,#d77c3d)
}

.romibet-games .game-card.is-selected {
  border-color:#c5683d;
  box-shadow:0 0 0 4px rgba(197,104,61,.13),0 18px 34px rgba(99,59,36,.14)
}

.romibet-live {
  background:linear-gradient(180deg,#f3faf8 0%,#e5f2ef 58%,#fff 100%)!important;
  color:#203d3c
}

.romibet-live .live-intro-grid h2,.romibet-live .live-category h3 {
  color:#173f3d
}

.romibet-live .live-intro-grid h2 span {
  color:#168279
}

.romibet-live .live-tab {
  border-color:#c7dfdc;
  color:#24534f;
  background:#fbfffe;
  box-shadow:0 7px 20px rgba(31,91,85,.07)
}

.romibet-live .live-tab.is-active {
  border-color:#16756e;
  color:#fff;
  background:linear-gradient(135deg,#11645f,#22998e);
  box-shadow:0 12px 28px rgba(20,111,103,.2)
}

.romibet-live .live-catalogue {
  border-color:#c9dfdc;
  background:rgba(251,255,254,.96);
  box-shadow:0 22px 55px rgba(31,83,78,.1)
}

.romibet-live .live-category-more {
  border-left-color:#23958b;
  background:#e8f7f4;
  color:#466663
}

.romibet-live .live-game-card button {
  background:linear-gradient(135deg,#126a64,#249b90)
}

.romibet-live .live-game-card.is-selected {
  border-color:#1c8179;
  box-shadow:0 0 0 4px rgba(28,129,121,.12),0 18px 34px rgba(29,83,79,.14)
}

.romibet-sports {
  background:linear-gradient(180deg,#f4f9fd 0%,#e8f2f8 48%,#fff 100%)!important;
  color:#243b4e
}

.romibet-sports .sports-intro span,.romibet-sports .sports-perspectives span,.romibet-sports .sports-formats>article>span {
  color:#28739e
}

.romibet-sports .sports-intro h2 em,.romibet-sports .sports-visual-copy h2 em {
  color:#2878a7
}

.romibet-sports .sports-perspectives article {
  border-color:#ccdee9;
  box-shadow:0 14px 34px rgba(38,87,119,.08)
}

.romibet-sports .sports-perspectives article:first-child>i {
  background:linear-gradient(135deg,#2774a4,#4fa0c3)
}

.romibet-sports .sports-perspectives article:last-child>i {
  background:linear-gradient(135deg,#25806b,#55a783)
}

.romibet-sports .sports-formats {
  border-color:#cbdde8;
  background:#cbdde8
}

.romibet-sports .sports-formats h3 i {
  color:#2779a8
}

.romibet-sports .sports-market-note {
  background:linear-gradient(120deg,#183a56,#276b8c)
}

.romibet-sports .sports-guide-toggle {
  background:linear-gradient(135deg,#1f6b73,#399481);
  box-shadow:0 12px 28px rgba(31,108,105,.2)
}

.romibet-sports .sports-promo-note {
  border-color:#78a9bd;
  background:#edf7f8
}

.romibet-vip {
  background:linear-gradient(180deg,#f7f1e4 0%,#fffaf1 30%,#f1ece2 100%)!important;
  color:#30343a
}

.romibet-vip .vip-section-banner {
  background:linear-gradient(110deg,#222d35,#35434b 62%,#8a744b);
  box-shadow:0 18px 44px rgba(42,47,48,.18)
}

.romibet-vip .vip-intro>div:first-child span,.romibet-vip .vip-level-copy>span {
  color:#9a7131
}

.romibet-vip .vip-intro h2 em {
  color:#9b7437
}

.romibet-vip .vip-explorer {
  border-color:#d9cfba;
  box-shadow:0 24px 60px rgba(73,63,47,.12)
}

.romibet-vip .vip-level-rail {
  background:#253139
}

.romibet-vip .vip-level-tab span {
  color:#d5c49f
}

.romibet-vip .vip-level-tab.is-active {
  background:linear-gradient(135deg,#8b6b34,#bea15e)
}

.romibet-vip .vip-stage {
  background:radial-gradient(circle at 88% 18%,#eee1c6 0,transparent 28%),linear-gradient(140deg,#fffdf8,#f5efe4)
}

.romibet-vip .vip-level-mark {
  border-color:#d7c69f;
  background:linear-gradient(145deg,#29343a,#a3864c);
  box-shadow:0 20px 45px rgba(71,62,43,.2),inset 0 0 0 10px rgba(255,255,255,.09)
}

.romibet-vip .vip-metrics>div {
  border-color:#ddd2bd;
  background:#fffdf8
}

.romibet-vip .vip-metrics .is-cashback {
  background:linear-gradient(135deg,#8a6934,#c2a461)
}

.romibet-vip .vip-progress-explained {
  border-color:#46545b;
  background:linear-gradient(135deg,#222d35 0%,#33434a 60%,#6d654d 100%);
  box-shadow:0 20px 48px rgba(47,52,51,.15)
}

.romibet-vip .vip-clarity-note {
  border-left-color:#b18a43
}

.romibet-vip .vip-clarity-note>i,.romibet-vip .vip-clarity-note>svg {
  color:#a47b35
}

.romibet-vip .vip-b-content article {
  background:#f7f1e5
}

/* Softer turquoise bridge between Sports, Loyalty and Bonuses */
.romibet-sports {
  background:linear-gradient(180deg,#f7fbfd 0%,#edf8f7 52%,#fff 100%)!important;
  color:#30464d
}

.romibet-sports .sports-visual-copy>span {
  color:#398f91;
  border-color:rgba(57,143,145,.25);
  background:rgba(255,255,255,.84)
}

.romibet-sports .sports-visual-copy h2 {
  color:#263941
}

.romibet-sports .sports-visual-copy h2 em {
  color:#3996b5
}

.romibet-sports .sports-visual-pills span {
  color:#355158;
  border-color:rgba(64,143,143,.22);
  background:rgba(255,255,255,.88)
}

.romibet-sports .sports-visual-pills i {
  color:#3a9692
}

.romibet-sports .sports-intro span,.romibet-sports .sports-perspectives span,.romibet-sports .sports-formats>article>span {
  color:#3f9290
}

.romibet-sports .sports-intro h2 em {
  color:#3f9895
}

.romibet-sports .sports-market-note {
  background:linear-gradient(120deg,#4b929b,#66aaa7 58%,#84bdad);
  box-shadow:0 16px 38px rgba(55,123,124,.14)
}

.romibet-sports .sports-guide-toggle {
  background:linear-gradient(135deg,#499b98,#72b9aa);
  box-shadow:0 12px 28px rgba(64,145,140,.16)
}

.romibet-sports .sports-promo-note {
  border-color:#a8d1cd;
  background:#f0faf8
}

.romibet-vip {
  background:linear-gradient(180deg,#eef8f5 0%,#fbfcf8 38%,#edf6f1 100%)!important;
  color:#304443
}

.romibet-vip .vip-section-banner {
  background:linear-gradient(110deg,#4b8c8e,#67aaa3 62%,#8fc1ad);
  box-shadow:0 18px 44px rgba(61,125,122,.14)
}

.romibet-vip .vip-intro>div:first-child span,.romibet-vip .vip-level-copy>span {
  color:#378b85
}

.romibet-vip .vip-intro h2 em {
  color:#439791
}

.romibet-vip .vip-explorer {
  border-color:#c9dfd9;
  box-shadow:0 24px 60px rgba(54,110,105,.1)
}

.romibet-vip .vip-level-rail {
  background:#3f7475
}

.romibet-vip .vip-level-tab span {
  color:#d9f0eb
}

.romibet-vip .vip-level-tab.is-active {
  background:linear-gradient(135deg,#62aaa2,#8bc7b3)
}

.romibet-vip .vip-stage {
  background:radial-gradient(circle at 88% 18%,#dcefe8 0,transparent 30%),linear-gradient(140deg,#fbfefd,#eef8f4)
}

.romibet-vip .vip-level-mark {
  border-color:#acd2c8;
  background:linear-gradient(145deg,#4d8f8e,#80bba7);
  box-shadow:0 20px 45px rgba(62,127,121,.17),inset 0 0 0 10px rgba(255,255,255,.13)
}

.romibet-vip .vip-metrics>div {
  border-color:#cfe2dd;
  background:#fbfefd
}

.romibet-vip .vip-metrics .is-cashback {
  background:linear-gradient(135deg,#559b94,#88c2ad)
}

.romibet-vip .vip-progress-explained {
  border-color:#75aaa4;
  background:linear-gradient(135deg,#417a7b 0%,#5b9991 60%,#83b29e 100%);
  box-shadow:0 20px 48px rgba(55,116,111,.13)
}

.romibet-vip .vip-clarity-note {
  border-left-color:#63a9a0
}

.romibet-vip .vip-clarity-note>i,.romibet-vip .vip-clarity-note>svg {
  color:#49958e
}

.romibet-vip .vip-b-content article {
  background:#f0f8f5
}

.romibet-bonuses.bonuses-v2 {
  background:linear-gradient(180deg,#f4faf9 0%,#fff 36%,#f5f7f4 100%)!important;
  border-top-color:#72ada7;
  color:#304443
}

.bonus-v2-heading>div>span {
  color:#3f918c
}

.bonus-v2-heading h2 {
  color:#293d42!important
}

.bonus-v2-heading h2 em {
  color:#469b96
}

.bonus-v2-heading>p {
  color:#607473
}

.bonus-v2-welcome {
  background:radial-gradient(circle at 8% 5%,rgba(255,226,166,.22),transparent 27%),linear-gradient(125deg,#4a858b,#65a39f 58%,#82b7a8);
  box-shadow:0 25px 65px rgba(58,125,121,.16)
}

.bonus-v2-selector .bonus-tab.is-active {
  background:linear-gradient(135deg,#4b9693,#75b6a8);
  box-shadow:0 12px 28px rgba(65,145,140,.16)
}

/* Warm editorial palette */
.romibet-games {
  background:linear-gradient(180deg,#eee8df,#e8e1d7 62%,#f1ece5)!important;
  color:#363a3a
}

.romibet-games .games-eyebrow,.romibet-games .games-intro h2 span {
  color:#b76545
}

.romibet-games .games-tab,.romibet-games .slot-subtab,.romibet-games .games-more {
  border-color:#d4c8ba;
  color:#514943;
  background:#f5f1ea;
  box-shadow:none
}

.romibet-games .games-tab.is-active,.romibet-games .slot-subtab.is-active {
  border-color:#b96d50;
  color:#fff;
  background:linear-gradient(135deg,#a95f43,#cf8664);
  box-shadow:0 10px 22px rgba(146,81,56,.16)
}

.romibet-games .games-panel {
  border-color:#d8cec1;
  background:#f4f0e9!important;
  box-shadow:0 18px 44px rgba(74,62,51,.09)
}

.romibet-games .games-category-more {
  border-left-color:#c67a59;
  background:#ebe1d5
}

.romibet-games .game-card button {
  background:linear-gradient(135deg,#a85d41,#ca7d5b)
}

.romibet-live {
  background:linear-gradient(180deg,#e3e7e7,#dbe1e1 58%,#ebe8e2)!important;
  color:#303a3e
}

.romibet-live .live-intro-grid h2 span {
  color:#527a89
}

.romibet-live .live-tab {
  border-color:#c5cdce;
  color:#40545b;
  background:#eef0ee;
  box-shadow:none
}

.romibet-live .live-tab.is-active {
  border-color:#557784;
  color:#fff;
  background:linear-gradient(135deg,#405f6b,#668995);
  box-shadow:0 10px 22px rgba(57,83,92,.16)
}

.romibet-live .live-catalogue {
  border-color:#c8d0d0;
  background:#ecefed!important;
  box-shadow:0 18px 44px rgba(55,70,74,.09)
}

.romibet-live .live-category-more {
  border-left-color:#718e98;
  background:#dfe6e6;
  color:#52656a
}

.romibet-live .live-game-card button {
  background:linear-gradient(135deg,#466773,#6e909a)
}

.romibet-sports {
  background:linear-gradient(180deg,#e7eaeb,#dde5e7 54%,#ebe8e2)!important;
  color:#303e44
}

.romibet-sports .sports-visual-copy>span {
  color:#527a89;
  border-color:rgba(72,105,116,.28);
  background:rgba(239,238,232,.9)
}

.romibet-sports .sports-visual-copy h2 {
  color:#29383e
}

.romibet-sports .sports-visual-copy h2 em {
  color:#4f8295
}

.romibet-sports .sports-visual-pills span {
  color:#405057;
  border-color:rgba(75,104,113,.25);
  background:rgba(240,239,234,.9)
}

.romibet-sports .sports-visual-pills i,.romibet-sports .sports-intro span,.romibet-sports .sports-perspectives span,.romibet-sports .sports-formats>article>span {
  color:#537d8b
}

.romibet-sports .sports-perspectives article {
  border-color:#c8d0d1;
  background:#f0efea;
  box-shadow:0 12px 30px rgba(53,69,74,.07)
}

.romibet-sports .sports-market-note {
  background:linear-gradient(120deg,#486570,#627e87 58%,#8b8980);
  box-shadow:0 14px 34px rgba(54,74,80,.13)
}

.romibet-sports .sports-guide-toggle {
  background:linear-gradient(135deg,#b56849,#ce8867);
  box-shadow:0 10px 24px rgba(151,85,59,.15)
}

.romibet-vip {
  background:linear-gradient(180deg,#e9e3da,#e3ddd4 55%,#ede9e2)!important;
  color:#343b3d
}

.romibet-vip .vip-section-banner {
  background:linear-gradient(110deg,#465c64,#66777b 62%,#9b8665);
  box-shadow:0 16px 38px rgba(58,66,66,.14)
}

.romibet-vip .vip-intro>div:first-child span,.romibet-vip .vip-level-copy>span,.romibet-vip .vip-intro h2 em {
  color:#a16d3e
}

.romibet-vip .vip-level-rail {
  background:#465b62
}

.romibet-vip .vip-level-tab span {
  color:#e6ded0
}

.romibet-vip .vip-level-tab.is-active {
  background:linear-gradient(135deg,#a86845,#cb8b60)
}

.romibet-vip .vip-stage {
  background:radial-gradient(circle at 88% 18%,#ddd1bf 0,transparent 30%),linear-gradient(140deg,#f2eee7,#e7e1d7)
}

.romibet-vip .vip-level-mark {
  border-color:#ccb99e;
  background:linear-gradient(145deg,#526a70,#aa8a60)
}

.romibet-vip .vip-metrics>div {
  border-color:#d2c9bd;
  background:#f0ece5
}

.romibet-vip .vip-metrics .is-cashback {
  background:linear-gradient(135deg,#9b6b45,#c49567)
}

.romibet-vip .vip-progress-explained {
  border-color:#718187;
  background:linear-gradient(135deg,#40575f,#5a6d72 60%,#837b69)
}

.romibet-vip .vip-b-content article {
  background:#ebe6dd
}

.romibet-bonuses.bonuses-v2 {
  background:linear-gradient(180deg,#e4e7e6,#ece9e3 45%,#e3ded6)!important;
  border-top-color:#697d83;
  color:#343b3d
}

.bonus-v2-heading>div>span {
  color:#a96746
}

.bonus-v2-heading h2 {
  color:#30393c!important
}

.bonus-v2-heading h2 em {
  color:#557b88
}

.bonus-v2-heading>p {
  color:#636765
}

.bonus-v2-welcome {
  background:radial-gradient(circle at 8% 5%,rgba(220,173,101,.2),transparent 27%),linear-gradient(125deg,#425a64,#5d747a 58%,#8b806d);
  box-shadow:0 20px 48px rgba(54,67,70,.15)
}

.bonus-v2-selector .bonus-tab.is-active {
  background:linear-gradient(135deg,#a75f42,#cd8461);
  box-shadow:0 10px 24px rgba(151,85,59,.15)
}

/* Romibet Payment Methods */
.romibet-payments {
  padding:82px 0;
  background:linear-gradient(180deg,#dfe4e4 0%,#e9e4dc 48%,#ddd8d0 100%);
  color:#30383b;
  font-family:var(--firstfont);
  scroll-margin-top:90px
}

.payments-shell {
  width:min(1540px,calc(100% - 96px));
  margin:0 auto
}

.payments-heading {
  display:grid;
  grid-template-columns:minmax(390px,.85fr) minmax(480px,1.15fr);
  gap:42px 90px;
  align-items:end;
  margin-bottom:30px
}

.payments-heading>div>span {
  display:flex;
  align-items:center;
  gap:9px;
  color:#a86143;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase
}

.payments-heading h2 {
  margin:10px 0 0;
  color:#2e383b;
  font-family:var(--secondfont);
  font-size:clamp(3rem,4.7vw,5.3rem);
  line-height:.94
}

.payments-heading h2 em {
  color:#557984;
  font-style:normal
}

.payments-heading>p {
  margin:0;
  color:#5f6564;
  font-size:1.07rem;
  line-height:1.68
}

.payments-switch {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:0 auto 16px;
  padding:8px;
  border:1px solid #c7c3bb;
  border-radius:24px;
  background:rgba(245,242,236,.75)
}

.payment-switch-btn {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  min-height:74px;
  padding:12px 20px;
  border:0;
  border-radius:17px;
  color:#435157;
  background:transparent;
  text-align:left;
  transition:.2s
}

.payment-switch-btn>i,.payment-switch-btn>svg {
  width:20px;
  height:20px;
  padding:12px;
  border-radius:13px;
  color:#567985;
  background:#e3e7e6;
  box-sizing:content-box
}

.payment-switch-btn span,.payment-switch-btn small {
  display:block
}

.payment-switch-btn span {
  font-size:1.02rem;
  font-weight:900
}

.payment-switch-btn small {
  margin-top:2px;
  color:inherit;
  font-size:.78rem;
  font-weight:600;
  opacity:.7
}

.payment-switch-btn.is-active {
  color:#fff;
  background:linear-gradient(135deg,#465f68,#647b80 62%,#8b806d);
  box-shadow:0 12px 28px rgba(56,69,72,.15)
}

.payment-switch-btn.is-active>i,.payment-switch-btn.is-active>svg {
  color:#a96142;
  background:#fff
}

.payment-panel {
  padding:34px;
  border:1px solid #c9c5bd;
  border-radius:30px;
  background:#efede7;
  box-shadow:0 20px 50px rgba(64,61,55,.09)
}

.payment-panel:not(.is-active) {
  display:none
}

.payment-panel-lead {
  display:grid;
  grid-template-columns:minmax(330px,.85fr) minmax(430px,1.15fr);
  gap:30px 75px;
  align-items:end;
  margin-bottom:28px
}

.payment-panel-lead span {
  color:#a76244;
  font-size:.75rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase
}

.payment-panel-lead h3 {
  margin:7px 0 0;
  color:#303a3d;
  font-size:clamp(1.75rem,2.5vw,2.8rem);
  line-height:1.06
}

.payment-panel-lead p {
  margin:0;
  color:#606665;
  line-height:1.65
}

.payment-group-heading {
  display:flex;
  align-items:center;
  gap:13px;
  margin:28px 0 12px;
  padding-top:24px;
  border-top:1px solid #d2cdc4
}

.payment-group-heading:first-of-type {
  margin-top:0;
  padding-top:0;
  border:0
}

.payment-group-heading>i,.payment-group-heading>svg {
  width:19px;
  height:19px;
  padding:12px;
  border-radius:13px;
  color:#fff;
  background:#587883;
  box-sizing:content-box
}

.payment-group-heading.is-crypto>i,.payment-group-heading.is-crypto>svg {
  background:#b46c4d
}

.payment-group-heading strong,.payment-group-heading span {
  display:block
}

.payment-group-heading strong {
  font-size:1.05rem
}

.payment-group-heading span {
  margin-top:2px;
  color:#737572;
  font-size:.8rem
}

.pay-method-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px
}

.pay-method-card {
  display:grid;
  grid-template-columns:94px minmax(0,1fr);
  grid-template-rows:auto auto;
  gap:10px 13px;
  align-items:center;
  min-height:142px;
  padding:15px;
  border:1px solid #d3cec5;
  border-radius:18px;
  background:#f7f4ee
}

.pay-logo {
  display:grid;
  place-items:center;
  width:94px;
  height:66px;
  padding:6px;
  border-radius:14px;
  background:#fff
}

.pay-logo img {
  display:block;
  width:100%;
  height:100%;
  max-width:88px;
  max-height:54px;
  object-fit:contain
}

.pay-method-card:has(img[src*="interac"]) .pay-logo img,
.pay-method-card:has(img[src*="visa-mastercard"]) .pay-logo img,
.pay-method-card:has(img[src*="mifinity"]) .pay-logo img,
.pay-method-card:has(img[src*="neteller"]) .pay-logo img,
.pay-method-card:has(img[src*="skrill"]) .pay-logo img {
  max-width:90px;
  max-height:56px
}

.payment-group-heading.is-crypto+.pay-method-grid .pay-logo {
  width:94px;
  height:70px;
  padding:4px
}

.payment-group-heading.is-crypto+.pay-method-grid .pay-logo img {
  max-width:90px;
  max-height:62px
}

.pay-method-name strong,.pay-method-name span,.pay-limit small,.pay-limit strong {
  display:block
}

.pay-method-name strong {
  color:#30383b;
  font-size:.92rem
}

.pay-method-name span {
  margin-top:3px;
  color:#777571;
  font-size:.72rem
}

.pay-limit {
  grid-column:1/-1;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:8px;
  padding-top:10px;
  border-top:1px solid #ded9d0
}

.pay-limit small {
  color:#88847e;
  font-size:.69rem;
  font-weight:700;
  text-transform:uppercase
}

.pay-limit strong {
  color:#4d6e79;
  font-size:.95rem
}

.payment-safety {
  display:grid;
  grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr);
  gap:24px 38px;
  margin:16px 0;
  padding:25px;
  border:1px solid #c2bbb0;
  border-radius:24px;
  background:linear-gradient(135deg,#3f5861,#60757a 62%,#8b7f6c);
  color:#fff;
  box-shadow:0 15px 36px rgba(55,66,68,.13)
}

.payment-safety-lead {
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:15px
}

.payment-safety-lead>i,.payment-safety-lead>svg {
  width:21px;
  height:21px;
  padding:15px;
  border-radius:15px;
  color:#a96243;
  background:#fff;
  box-sizing:content-box
}

.payment-safety-lead span {
  display:block;
  color:#f0c29f;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase
}

.payment-safety-lead h3 {
  margin:6px 0 8px;
  color:#fff;
  font-size:1.55rem;
  line-height:1.12
}

.payment-safety-lead p {
  margin:0;
  color:rgba(255,255,255,.78);
  font-size:.9rem;
  line-height:1.58
}

.payment-safety-points {
  display:grid;
  gap:8px
}

.payment-safety-points article {
  display:grid;
  grid-template-columns:39px minmax(0,1fr);
  gap:11px;
  padding:12px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:15px;
  background:rgba(255,255,255,.08)
}

.payment-safety-points article>i,.payment-safety-points article>svg {
  width:17px;
  height:17px;
  padding:10px;
  border-radius:11px;
  color:#4f6e78;
  background:#fff;
  box-sizing:content-box
}

.payment-safety-points strong {
  display:block;
  color:#fff;
  font-size:.9rem
}

.payment-safety-points p {
  margin:3px 0 0;
  color:rgba(255,255,255,.72);
  font-size:.78rem;
  line-height:1.48
}

.payment-clarity {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:16px
}

.payment-clarity article {
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:14px;
  padding:20px;
  border:1px solid #c9c5bd;
  border-radius:20px;
  background:#e9e6df
}

.payment-clarity article>i,.payment-clarity article>svg {
  width:19px;
  height:19px;
  padding:13px;
  border-radius:14px;
  color:#fff;
  background:#587883;
  box-sizing:content-box
}

.payment-clarity article:nth-child(2)>i,.payment-clarity article:nth-child(2)>svg {
  background:#a96749
}

.payment-clarity article:nth-child(3)>i,.payment-clarity article:nth-child(3)>svg {
  background:#8c7a61
}

.payment-clarity strong {
  color:#313a3d
}

.payment-clarity p {
  margin:6px 0 0;
  color:#656967;
  font-size:.88rem;
  line-height:1.58
}

.payment-help {
  margin-top:14px;
  overflow:hidden;
  border:1px solid #c8c3ba;
  border-radius:19px;
  background:#f1eee8
}

.payment-help summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px 22px;
  color:#38464b;
  font-weight:900;
  cursor:pointer;
  list-style:none
}

.payment-help summary::-webkit-details-marker {
  display:none
}

.payment-help summary i,.payment-help summary svg {
  transition:transform .2s
}

.payment-help[open] summary i,.payment-help[open] summary svg {
  transform:rotate(180deg)
}

.payment-help>div {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  padding:0 22px 20px
}

.payment-help p {
  margin:0;
  color:#646967;
  line-height:1.6
}

@media(max-width:1100px) {
  .payments-heading,.payment-panel-lead,.payment-safety {
    grid-template-columns:1fr;
    gap:15px
  }

  .pay-method-grid {
    grid-template-columns:repeat(3,minmax(0,1fr))
  }

  .payment-clarity {
    grid-template-columns:1fr
  }

}

@media(max-width:760px) {
  .romibet-payments {
    padding:55px 0
  }

  .payments-shell {
    width:calc(100% - 26px)
  }

  .payments-heading h2 {
    font-size:2.75rem
  }

  .payments-switch {
    grid-template-columns:1fr
  }

  .payment-panel {
    padding:22px 14px
  }

  .pay-method-grid {
    grid-template-columns:1fr 1fr
  }

  .pay-method-card {
    grid-template-columns:72px minmax(0,1fr)
  }

  .pay-logo,.payment-group-heading.is-crypto+.pay-method-grid .pay-logo {
    width:72px;
    height:58px
  }

  .pay-logo img,.payment-group-heading.is-crypto+.pay-method-grid .pay-logo img {
    max-width:66px;
    max-height:50px
  }

  .payment-help>div {
    grid-template-columns:1fr
  }

}

@media(max-width:480px) {
  .pay-method-grid {
    grid-template-columns:1fr
  }

  .payment-switch-btn {
    justify-content:flex-start
  }

}

/* Payment logo contrast corrections */
.pay-method-card:has(img[src*="interac"]) .pay-logo,
.pay-method-card:has(img[src*="visa-mastercard"]) .pay-logo,
.pay-method-card:has(img[src*="neteller"]) .pay-logo,
.pay-method-card:has(img[src*="mifinity"]) .pay-logo {
  overflow:hidden;
  background:#536e77
}

.pay-method-card:has(img[src*="interac"]) .pay-logo {
  position:relative
}

.pay-method-card:has(img[src*="interac"]) .pay-logo img {
  position:absolute;
  left:50%;
  top:50%;
  width:180px;
  max-width:none;
  height:60px;
  max-height:none;
  object-fit:contain;
  transform:translate(-50%,-50%)
}

.pay-method-card:has(img[src*="visa-mastercard"]) .pay-logo img {
  width:90px;
  max-width:90px;
  height:54px;
  max-height:54px;
  object-fit:contain
}

.payment-group-heading.is-crypto+.pay-method-grid .pay-logo {
  background:#d3dcda;
  box-shadow:inset 0 0 0 1px rgba(67,88,93,.08)
}

.pay-method-card:has(img[src*="neteller"]) .pay-logo,.pay-method-card:has(img[src*="mifinity"]) .pay-logo {
  box-shadow:none
}

/* Unified Romibet visual system */
.romibet-games {
  background:var(--page-bg)!important;
  color:var(--text)
}

.romibet-games .games-eyebrow,.romibet-games .games-intro h2 span {
  color:var(--purple)
}

.romibet-games .games-intro p,.romibet-games .games-category-head p,.romibet-games .games-category-more p,.romibet-games .slot-subcopy {
  color:var(--muted)
}

.romibet-games .games-tab,.romibet-games .slot-subtab,.romibet-games .games-more {
  border-color:var(--light-border);
  color:var(--ink);
  background:var(--surface);
  box-shadow:none
}

.romibet-games .games-tab:is(:hover,.is-active),.romibet-games .slot-subtab:is(:hover,.is-active) {
  border-color:var(--purple)
}

.romibet-games .games-tab.is-active,.romibet-games .slot-subtab.is-active,.romibet-games .game-card button {
  color:#fff;
  background:var(--purple);
  box-shadow:0 10px 24px rgba(105,49,159,.18)
}

.romibet-games .games-panel {
  border-color:var(--light-border);
  background:var(--surface)!important;
  box-shadow:0 18px 44px rgba(41,22,63,.08)
}

.romibet-games .games-category-more {
  border-left-color:var(--purple-soft);
  background:var(--section-alt)
}

.romibet-games .game-card.is-selected {
  border-color:var(--purple);
  box-shadow:0 0 0 4px rgba(132,66,196,.12),0 18px 34px rgba(41,22,63,.12)
}

.romibet-live {
  background:var(--section-alt)!important;
  color:var(--text)
}

.romibet-live .live-intro-grid h2,.romibet-live .live-category h3 {
  color:var(--ink)
}

.romibet-live .live-intro-grid h2 span {
  color:var(--purple)
}

.romibet-live .live-tab {
  border-color:var(--light-border);
  color:var(--ink);
  background:var(--surface);
  box-shadow:none
}

.romibet-live .live-tab.is-active,.romibet-live .live-game-card button {
  border-color:var(--purple);
  color:#fff;
  background:var(--purple);
  box-shadow:0 10px 24px rgba(105,49,159,.18)
}

.romibet-live .live-catalogue {
  border-color:var(--light-border);
  background:var(--surface)!important;
  box-shadow:0 18px 44px rgba(41,22,63,.08)
}

.romibet-live .live-category-more {
  border-left-color:var(--purple-soft);
  background:#f6f1fa;
  color:var(--muted)
}

.romibet-live .live-game-card.is-selected {
  border-color:var(--purple);
  box-shadow:0 0 0 4px rgba(132,66,196,.12),0 18px 34px rgba(41,22,63,.12)
}

.romibet-sports {
  background:var(--page-bg)!important;
  color:var(--text)
}

.romibet-sports .sports-visual-copy>span,.romibet-sports .sports-intro span,.romibet-sports .sports-perspectives span,.romibet-sports .sports-formats>article>span {
  color:var(--purple)
}

.romibet-sports .sports-visual-copy h2,.romibet-sports .sports-perspectives h3,.romibet-sports .sports-formats h3 {
  color:var(--ink)
}

.romibet-sports .sports-visual-copy h2 em,.romibet-sports .sports-intro h2 em,.romibet-sports .sports-visual-pills i,.romibet-sports .sports-formats h3 i {
  color:var(--purple)
}

.romibet-sports .sports-perspectives article,.romibet-sports .sports-formats article,.romibet-sports .sports-guide-details>article,.romibet-sports .sports-opening-copy {
  border-color:var(--light-border);
  background:var(--surface);
  box-shadow:0 12px 30px rgba(41,22,63,.07)
}

.romibet-sports .sports-perspectives article>i {
  background:var(--purple)
}

.romibet-sports .sports-formats {
  border-color:var(--light-border);
  background:var(--light-border)
}

.romibet-sports .sports-market-note {
  background:var(--dark-panel);
  box-shadow:0 14px 34px rgba(41,22,63,.15)
}

.romibet-sports .sports-guide-toggle {
  background:var(--purple);
  box-shadow:0 10px 24px rgba(105,49,159,.18)
}

.romibet-sports .sports-promo-note {
  border-color:var(--purple-soft);
  background:var(--section-alt)
}

.romibet-vip {
  background:linear-gradient(180deg,#f1ecf7 0%,#f8f4fa 46%,#f7f3ee 100%)!important;
  color:var(--text)
}

.romibet-vip .vip-section-banner {
  background:linear-gradient(110deg,#352342,#463151);
  box-shadow:0 16px 38px rgba(41,22,63,.16)
}

.romibet-vip .vip-intro h2,.romibet-vip .vip-level-copy h3 {
  color:var(--ink)
}

.romibet-vip .vip-intro p,.romibet-vip .vip-level-copy p {
  color:var(--muted)
}

.romibet-vip .vip-intro>div:first-child span,.romibet-vip .vip-level-copy>span,.romibet-vip .vip-intro h2 em {
  color:var(--purple)
}

.romibet-vip .vip-explorer {
  border-color:var(--light-border);
  background:var(--surface);
  box-shadow:0 22px 52px rgba(41,22,63,.1)
}

.romibet-vip .vip-level-rail {
  background:#352342
}

.romibet-vip .vip-level-tab span {
  color:#d8cce0
}

.romibet-vip .vip-level-tab.is-active {
  background:var(--purple)
}

.romibet-vip .vip-stage {
  background:radial-gradient(circle at 88% 18%,rgba(181,138,219,.17),transparent 30%),var(--surface)
}

.romibet-vip .vip-level-mark {
  border-color:#d8b873;
  background:linear-gradient(145deg,#69319f,#8442c4);
  box-shadow:0 18px 40px rgba(74,35,105,.2),inset 0 0 0 10px rgba(255,255,255,.09)
}

.romibet-vip .vip-metrics>div {
  border-color:var(--light-border);
  background:#f5eff8;
  color:var(--ink)
}

.romibet-vip .vip-metrics>div strong,.romibet-vip .vip-metrics>div span {
  color:var(--ink)
}

.romibet-vip .vip-metrics .is-cashback {
  border-color:var(--purple);
  background:var(--purple);
  color:#fff
}

.romibet-vip .vip-metrics .is-cashback strong,.romibet-vip .vip-metrics .is-cashback span {
  color:#fff
}

.romibet-vip .vip-progress-explained {
  border-color:#5b426d;
  background:#352342;
  box-shadow:0 18px 42px rgba(41,22,63,.16)
}

.romibet-vip .vip-clarity-note {
  border-left-color:#d8b873;
  background:#fffaf1;
  color:var(--text)
}

.romibet-vip .vip-clarity-note>i,.romibet-vip .vip-clarity-note>svg {
  color:var(--purple)
}

.romibet-vip .vip-beginner-guide {
  border-color:var(--light-border);
  background:var(--surface)
}

.romibet-vip .vip-b-content article {
  background:#f5eff8;
  color:var(--text)
}

.romibet-bonuses.bonuses-v2 {
  background:var(--section-alt)!important;
  border-color:var(--purple-soft);
  color:var(--text)
}

.bonus-v2-heading>div>span {
  color:var(--purple)
}

.bonus-v2-heading h2 {
  color:var(--ink)!important
}

.bonus-v2-heading h2 em {
  color:var(--purple)
}

.bonus-v2-heading>p {
  color:var(--muted)
}

.bonus-v2-welcome {
  background:var(--dark-panel);
  box-shadow:0 20px 48px rgba(41,22,63,.16)
}

.bonus-v2-selector .bonus-tab.is-active {
  background:var(--purple);
  box-shadow:0 10px 24px rgba(105,49,159,.18)
}

.romibet-payments {
  background:#f7f3ee!important;
  color:var(--text)
}

.payments-heading h2,.payment-panel-lead h3,.pay-method-name strong,.payment-clarity strong {
  color:var(--ink)
}

.payments-heading h2 em,.payments-heading>div>span,.payment-panel-lead span {
  color:var(--purple)
}

.payments-heading>p,.payment-panel-lead p,.pay-method-name span,.payment-clarity p {
  color:var(--muted)
}

.payments-switch,.payment-panel,.pay-method-card,.payment-help {
  border-color:var(--light-border);
  background:var(--surface)
}

.payment-switch-btn {
  color:var(--ink)
}

.payment-switch-btn.is-active {
  color:#fff;
  background:var(--purple);
  box-shadow:0 10px 24px rgba(105,49,159,.18)
}

.payment-switch-btn>i,.payment-switch-btn>svg {
  color:var(--purple);
  background:var(--section-alt)
}

.payment-safety {
  border-color:#5a416c;
  background:var(--dark-panel);
  box-shadow:0 15px 36px rgba(41,22,63,.16)
}

.payment-safety-lead span {
  color:var(--champagne)
}

.payment-safety-lead>i,.payment-safety-lead>svg {
  color:var(--purple)
}

.payment-safety-points article>i,.payment-safety-points article>svg {
  color:var(--purple)
}

.payment-clarity article {
  border-color:var(--light-border);
  background:var(--section-alt)
}

.payment-clarity article > i,
.payment-clarity article > svg,
.payment-clarity article:nth-child(2) > i,
.payment-clarity article:nth-child(2) > svg,
.payment-clarity article:nth-child(3) > i,
.payment-clarity article:nth-child(3) > svg {
  background:var(--purple)
}

.pay-logo,
.payment-group-heading.is-crypto + .pay-method-grid .pay-logo,
.pay-method-card:has(img[src*="interac"]) .pay-logo,
.pay-method-card:has(img[src*="visa-mastercard"]) .pay-logo,
.pay-method-card:has(img[src*="neteller"]) .pay-logo,
.pay-method-card:has(img[src*="mifinity"]) .pay-logo {
  background:#c8b5d8
}

.about-section {
  background:var(--section-alt)!important;
  color:var(--text)
}

.about-section :is(h2,h3,strong) {
  color:var(--ink)
}

.about-section p {
  color:var(--muted)
}

.site-footer {
  background:var(--dark-panel);
  border-top-color:rgba(255,255,255,.1)
}

.footer-trust-pills span {
  color:#f0d9a4;
  border-color:rgba(216,184,115,.28);
  background:rgba(216,184,115,.1)
}

.footer-links-list a:hover {
  color:#f0d9a4
}

:where(button,a,[role="button"]):focus-visible {
  outline:3px solid var(--champagne);
  outline-offset:3px
}

html,body {
  overflow-x:hidden
}

/* Romibet tournaments */
.romibet-tournaments {
  padding:88px 0;
  background:linear-gradient(180deg,#f7f3ee 0%,#f1ecf7 52%,#f7f3ee 100%);
  color:var(--text);
  scroll-margin-top:90px
}

.tournaments-shell {
  width:min(1320px,calc(100% - 48px));
  margin:0 auto
}

.tournaments-heading {
  display:grid;
  grid-template-columns:minmax(380px,.85fr) minmax(460px,1.15fr);
  gap:42px 80px;
  align-items:end;
  margin-bottom:30px
}

.tournaments-heading>div>span,.tournament-hero-copy>span,.tournament-types>article>span,.tournament-current header span,.tournament-how>div>span {
  display:block;
  color:var(--purple);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase
}

.tournaments-heading h2 {
  margin:10px 0 0;
  color:var(--ink);
  font-family:var(--secondfont);
  font-size:clamp(3.1rem,5vw,5.5rem);
  line-height:.92
}

.tournaments-heading h2 em {
  color:var(--purple);
  font-style:normal
}

.tournaments-heading>p {
  margin:0;
  color:var(--muted);
  font-size:1.04rem;
  line-height:1.7
}

.tournaments-hero {
  position:relative;
  display:grid;
  grid-template-columns:190px minmax(0,1.05fr) minmax(340px,.75fr);
  gap:32px;
  align-items:center;
  overflow:hidden;
  padding:38px;
  border:1px solid #5a416c;
  border-radius:30px;
  background:radial-gradient(circle at 12% 25%,rgba(132,66,196,.34),transparent 24%),linear-gradient(125deg,#29163f,#352342 63%,#49305a);
  box-shadow:0 22px 52px rgba(41,22,63,.2)
}

.tournament-orbit {
  position:relative;
  display:grid;
  place-items:center;
  width:164px;
  height:164px;
  margin:auto;
  border-radius:50%;
  background:rgba(255,255,255,.06)
}

.tournament-orbit>i,.tournament-orbit>svg {
  position:relative;
  z-index:2;
  width:1em;
  height:1em;
  color:#f3dfae;
  font-size:4.4rem;
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.25));
  animation:trophy-float 3.2s ease-in-out infinite
}

.orbit-ring {
  position:absolute;
  border:1px solid rgba(216,184,115,.48);
  border-radius:50%;
  inset:15px;
  animation:orbit-pulse 2.8s ease-out infinite
}

.orbit-ring-two {
  inset:-2px;
  animation-delay:1.2s
}

.tournament-hero-copy {
  color:#fff
}

.tournament-hero-copy h3 {
  margin:8px 0 12px;
  color:#fff;
  font-family:var(--secondfont);
  font-size:clamp(2rem,3vw,3.2rem);
  line-height:1.02
}

.tournament-hero-copy p {
  margin:0;
  color:rgba(255,255,255,.76);
  line-height:1.65
}

.tournament-format-pills {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px
}

.tournament-format-pills span {
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  color:#fff;
  background:rgba(255,255,255,.08);
  font-size:.78rem;
  font-weight:800
}

.tournament-format-pills i,.tournament-format-pills svg {
  margin-right:5px;
  color:#e1c484
}

.tournament-race {
  padding:20px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:22px;
  background:rgba(255,255,255,.08);
  backdrop-filter:blur(8px)
}

.race-title {
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-bottom:17px;
  color:#fff
}

.race-title span {
  font-weight:900
}

.race-title small {
  color:rgba(255,255,255,.58)
}

.race-row {
  display:grid;
  grid-template-columns:28px 1fr 86px;
  gap:10px;
  align-items:center;
  margin-top:12px;
  color:#fff;
  font-size:.74rem
}

.race-row b {
  display:grid;
  place-items:center;
  width:27px;
  height:27px;
  border-radius:9px;
  background:rgba(255,255,255,.12)
}

.race-row>span {
  height:8px;
  overflow:hidden;
  border-radius:99px;
  background:rgba(255,255,255,.1)
}

.race-row>span i {
  display:block;
  width:var(--race-width);
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#8442c4,#d8b873);
  transform-origin:left;
  animation:race-grow 2.7s ease-in-out infinite alternate
}

.race-row:nth-child(3)>span i {
  animation-delay:.35s
}

.race-row:nth-child(4)>span i {
  animation-delay:.7s
}

.race-row strong {
  text-align:right;
  font-weight:700
}

.race-row.is-leading b {
  color:#29163f;
  background:#d8b873
}

.tournament-types {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:18px
}

.tournament-types>article {
  padding:27px;
  border:1px solid var(--light-border);
  border-radius:24px;
  background:var(--surface);
  box-shadow:0 14px 34px rgba(41,22,63,.07)
}

.tournament-types>article>i,.tournament-types>article>svg {
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  padding:13px;
  margin-bottom:21px;
  border-radius:15px;
  color:#fff;
  background:var(--purple);
  box-sizing:content-box
}

.tournament-types h3 {
  margin:8px 0 10px;
  color:var(--ink);
  font-size:1.32rem
}

.tournament-types p {
  margin:0;
  color:var(--muted);
  line-height:1.62
}

.tournament-current {
  margin-top:18px;
  padding:30px;
  border:1px solid var(--light-border);
  border-radius:28px;
  background:var(--surface)
}

.tournament-current>header {
  display:grid;
  grid-template-columns:minmax(320px,.8fr) minmax(420px,1.2fr);
  gap:25px 60px;
  align-items:end;
  margin-bottom:20px
}

.tournament-current h3,.tournament-how h3 {
  margin:7px 0 0;
  color:var(--ink);
  font-family:var(--secondfont);
  font-size:clamp(2rem,3vw,3rem);
  line-height:1.05
}

.tournament-current header p {
  margin:0;
  color:var(--muted);
  line-height:1.6
}

.tournament-current-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px
}

.tournament-current-grid>article {
  padding:20px;
  border:1px solid var(--light-border);
  border-radius:19px;
  background:#f6f1fa
}

.tournament-tag {
  display:inline-flex;
  padding:6px 9px;
  border-radius:999px;
  color:#fff!important;
  background:var(--purple);
  font-size:.66rem!important;
  letter-spacing:.08em!important
}

.tournament-tag.is-sport {
  background:#352342
}

.tournament-tag.is-live {
  color:#352342!important;
  background:#d8b873
}

.tournament-current-grid h4 {
  margin:15px 0 8px;
  color:var(--ink);
  font-size:1.05rem
}

.tournament-current-grid p {
  min-height:68px;
  margin:0;
  color:var(--muted);
  font-size:.84rem;
  line-height:1.5
}

.tournament-current-grid dl {
  margin:17px 0 0
}

.tournament-current-grid dl>div {
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:8px 0;
  border-top:1px solid var(--light-border)
}

.tournament-current-grid dt {
  color:var(--muted);
  font-size:.7rem
}

.tournament-current-grid dd {
  margin:0;
  color:var(--ink);
  font-size:.72rem;
  font-weight:900;
  text-align:right
}

.tournament-current-note {
  display:block;
  margin-top:13px;
  color:var(--muted)
}

.tournament-how {
  display:grid;
  grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
  gap:35px;
  margin-top:18px;
  padding:30px;
  border-radius:28px;
  color:#fff;
  background:var(--dark-panel);
  box-shadow:0 18px 42px rgba(41,22,63,.15)
}

.tournament-how>div>span {
  color:var(--champagne)
}

.tournament-how h3 {
  color:#fff
}

.tournament-how ol {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none
}

.tournament-how li {
  display:grid;
  grid-template-columns:38px 1fr;
  gap:12px;
  padding:15px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  background:rgba(255,255,255,.07)
}

.tournament-how li>b {
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:12px;
  color:#fff;
  background:var(--purple)
}

.tournament-how strong {
  display:block;
  color:#fff
}

.tournament-how p {
  margin:4px 0 0;
  color:rgba(255,255,255,.68);
  font-size:.78rem;
  line-height:1.45
}

.tournament-interest {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:18px
}

.tournament-interest article {
  display:grid;
  grid-template-columns:46px 1fr;
  gap:14px;
  padding:21px;
  border:1px solid var(--light-border);
  border-radius:20px;
  background:var(--surface)
}

.tournament-interest article>i,.tournament-interest article>svg {
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  padding:13px;
  border-radius:14px;
  color:#fff;
  background:var(--purple);
  box-sizing:content-box
}

.tournament-interest strong {
  color:var(--ink)
}

.tournament-interest p {
  margin:6px 0 0;
  color:var(--muted);
  font-size:.86rem;
  line-height:1.55
}

@keyframes trophy-float {
  0%,100% {
    transform:translateY(0) rotate(-2deg)
  }

  50% {
    transform:translateY(-9px) rotate(2deg)
  }

}

@keyframes orbit-pulse {
  0% {
    transform:scale(.78);
    opacity:0
  }

  35% {
    opacity:1
  }

  100% {
    transform:scale(1.12);
    opacity:0
  }

}

@keyframes race-grow {
  from {
    transform:scaleX(.72);
    filter:saturate(.85)
  }

  to {
    transform:scaleX(1);
    filter:saturate(1.2)
  }

}

@media(max-width:1050px) {
  .tournaments-heading,.tournament-current>header,.tournament-how {
    grid-template-columns:1fr;
    gap:18px
  }

  .tournaments-hero {
    grid-template-columns:150px 1fr
  }

  .tournament-race {
    grid-column:1/-1
  }

  .tournament-current-grid {
    grid-template-columns:1fr 1fr
  }

  .tournament-types,.tournament-interest {
    grid-template-columns:1fr
  }

}

@media(max-width:650px) {
  .romibet-tournaments {
    padding:58px 0
  }

  .tournaments-shell {
    width:calc(100% - 26px)
  }

  .tournaments-heading h2 {
    font-size:2.75rem
  }

  .tournaments-heading {
    grid-template-columns:1fr;
    gap:18px
  }

  .tournaments-hero {
    grid-template-columns:1fr;
    padding:25px 18px
  }

  .tournament-orbit {
    width:126px;
    height:126px
  }

  .tournament-orbit>i,.tournament-orbit>svg {
    font-size:3.4rem
  }

  .tournament-current {
    padding:22px 14px
  }

  .tournament-current-grid,.tournament-how ol {
    grid-template-columns:1fr
  }

  .tournament-current-grid p {
    min-height:0
  }

  .tournament-how {
    padding:24px 18px
  }

  .race-row {
    grid-template-columns:27px 1fr 70px
  }

}

@media(prefers-reduced-motion:reduce) {
  .tournament-orbit>i,.tournament-orbit>svg,.orbit-ring,.race-row>span i {
    animation:none!important
  }

}

/* Romibet missions and challenges */
.romibet-missions {
  padding:88px 0;
  background:linear-gradient(180deg,#f1ecf7 0%,#f8f4fa 48%,#f7f3ee 100%);
  color:var(--text);
  scroll-margin-top:90px
}

.missions-shell {
  width:min(1320px,calc(100% - 48px));
  margin:0 auto
}

.missions-heading {
  display:grid;
  grid-template-columns:minmax(390px,.9fr) minmax(460px,1.1fr);
  gap:42px 80px;
  align-items:end;
  margin-bottom:30px
}

.missions-heading>div>span,.missions-command-copy>span,.mission-types>article>span,.mission-snapshot header span,.missions-weekly-reward>div>span {
  display:block;
  color:var(--purple);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase
}

.missions-heading h2 {
  margin:10px 0 0;
  color:var(--ink);
  font-family:var(--secondfont);
  font-size:clamp(3rem,4.8vw,5.3rem);
  line-height:.93
}

.missions-heading h2 em {
  color:var(--purple);
  font-style:normal
}

.missions-heading>p {
  margin:0;
  color:var(--muted);
  font-size:1.04rem;
  line-height:1.7
}

.missions-command {
  display:grid;
  grid-template-columns:210px minmax(0,1fr) minmax(320px,.68fr);
  gap:34px;
  align-items:center;
  overflow:hidden;
  padding:38px;
  border:1px solid #5a416c;
  border-radius:30px;
  background:radial-gradient(circle at 9% 30%,rgba(132,66,196,.38),transparent 25%),linear-gradient(125deg,#29163f,#352342 62%,#49305a);
  box-shadow:0 22px 52px rgba(41,22,63,.2)
}

.missions-coin-visual {
  position:relative;
  display:grid;
  place-items:center;
  width:190px;
  height:190px;
  margin:auto
}

.mission-core {
  position:relative;
  z-index:2;
  display:grid;
  place-items:center;
  width:124px;
  height:124px;
  border:8px solid rgba(255,255,255,.1);
  border-radius:50%;
  color:#fff;
  background:linear-gradient(145deg,#8442c4,#69319f);
  box-shadow:0 16px 38px rgba(0,0,0,.25),inset 0 0 0 2px rgba(216,184,115,.55)
}

.mission-core small,.mission-core span {
  font-size:.61rem;
  font-weight:900;
  letter-spacing:.12em
}

.mission-core strong {
  font-family:var(--secondfont);
  font-size:3.2rem;
  line-height:.74
}

.coin {
  position:absolute;
  z-index:3;
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border:3px solid #f5e5b8;
  border-radius:50%;
  color:#422653;
  background:#d8b873;
  box-shadow:0 9px 22px rgba(0,0,0,.22);
  animation:coin-drift 3.4s ease-in-out infinite
}

.coin svg {
  width:15px;
  height:15px
}

.coin-one {
  top:4px;
  left:18px
}

.coin-two {
  right:0;
  top:65px;
  animation-delay:.65s
}

.coin-three {
  left:12px;
  bottom:3px;
  animation-delay:1.3s
}

.missions-command-copy {
  color:#fff
}

.missions-command-copy h3 {
  margin:8px 0 12px;
  color:#fff;
  font-family:var(--secondfont);
  font-size:clamp(2rem,3vw,3rem);
  line-height:1.03
}

.missions-command-copy p {
  margin:0;
  color:rgba(255,255,255,.76);
  line-height:1.65
}

.missions-benefit-pills {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px
}

.missions-benefit-pills span {
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:999px;
  color:#fff;
  background:rgba(255,255,255,.07);
  font-size:.75rem;
  font-weight:800
}

.missions-benefit-pills svg {
  margin-right:5px;
  color:#e3c783
}

.mission-progress-demo {
  padding:21px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:21px;
  color:#fff;
  background:rgba(255,255,255,.08)
}

.mission-progress-demo>div:first-child {
  display:flex;
  justify-content:space-between;
  gap:12px
}

.mission-progress-demo>div:first-child span {
  font-weight:800
}

.mission-progress-demo>div:first-child strong {
  color:#e6ca88
}

.mission-progress-track {
  height:10px;
  margin:14px 0 17px;
  overflow:hidden;
  border-radius:99px;
  background:rgba(255,255,255,.1)
}

.mission-progress-track i {
  display:block;
  width:70%;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#8442c4,#d8b873);
  transform-origin:left;
  animation:mission-progress 2.7s ease-in-out infinite alternate
}

.mission-progress-demo ul {
  display:grid;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none
}

.mission-progress-demo li {
  display:flex;
  align-items:center;
  gap:8px;
  color:rgba(255,255,255,.62);
  font-size:.78rem
}

.mission-progress-demo li svg {
  width:13px
}

.mission-progress-demo li.is-done {
  color:#fff
}

.mission-progress-demo li.is-done svg {
  color:#d8b873
}

.mission-progress-demo>small {
  display:block;
  margin-top:15px;
  color:rgba(255,255,255,.46)
}

.mission-types {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:18px
}

.mission-types>article {
  padding:27px;
  border:1px solid var(--light-border);
  border-radius:24px;
  background:var(--surface);
  box-shadow:0 14px 34px rgba(41,22,63,.07)
}

.mission-type-icon {
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  margin-bottom:20px;
  border-radius:15px;
  color:#fff;
  background:var(--purple)
}

.mission-type-icon svg {
  width:21px;
  height:21px
}

.mission-types h3 {
  margin:8px 0 10px;
  color:var(--ink);
  font-size:1.3rem
}

.mission-types p {
  margin:0;
  color:var(--muted);
  line-height:1.6
}

.mission-types ul {
  display:grid;
  gap:7px;
  margin:17px 0 0;
  padding:15px 0 0;
  border-top:1px solid var(--light-border);
  list-style:none
}

.mission-types li {
  position:relative;
  padding-left:17px;
  color:var(--text);
  font-size:.78rem
}

.mission-types li:before {
  position:absolute;
  left:0;
  top:.48em;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--purple);
  content:""
}

.mission-snapshot {
  margin-top:18px;
  padding:30px;
  border:1px solid var(--light-border);
  border-radius:28px;
  background:var(--surface)
}

.mission-snapshot>header {
  display:grid;
  grid-template-columns:minmax(330px,.82fr) minmax(440px,1.18fr);
  gap:28px 60px;
  align-items:end;
  margin-bottom:20px
}

.mission-snapshot h3 {
  margin:7px 0 0;
  color:var(--ink);
  font-family:var(--secondfont);
  font-size:clamp(2rem,3vw,3rem);
  line-height:1.04
}

.mission-snapshot header p {
  margin:0;
  color:var(--muted);
  line-height:1.6
}

.mission-snapshot-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px
}

.mission-snapshot-grid>article {
  position:relative;
  overflow:hidden;
  padding:21px;
  border:1px solid var(--light-border);
  border-radius:19px;
  background:#f6f1fa
}

.mission-snapshot-grid>article:before {
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:var(--mission-accent);
  content:""
}

.mission-snapshot-grid>article>span {
  color:var(--mission-accent);
  font-size:.67rem;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase
}

.mission-snapshot-grid h4 {
  margin:13px 0 8px;
  color:var(--ink);
  font-size:1.03rem
}

.mission-snapshot-grid p {
  min-height:79px;
  margin:0;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.5
}

.mission-snapshot-grid dl {
  margin:15px 0 0
}

.mission-snapshot-grid dl>div {
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:8px 0;
  border-top:1px solid var(--light-border)
}

.mission-snapshot-grid dt {
  color:var(--muted);
  font-size:.69rem
}

.mission-snapshot-grid dd {
  margin:0;
  color:var(--ink);
  font-size:.71rem;
  font-weight:900;
  text-align:right
}

.missions-weekly-reward {
  display:grid;
  grid-template-columns:minmax(340px,1fr) 160px minmax(340px,1fr);
  gap:28px;
  align-items:center;
  margin-top:18px;
  padding:30px;
  border:1px solid #5a416c;
  border-radius:28px;
  color:#fff;
  background:var(--dark-panel);
  box-shadow:0 18px 42px rgba(41,22,63,.15)
}

.missions-weekly-reward>div:first-child {
  display:grid;
  grid-template-columns:48px 1fr;
  column-gap:14px
}

.missions-weekly-reward>div:first-child>svg {
  grid-row:1/4;
  width:21px;
  height:21px;
  padding:13px;
  border-radius:14px;
  color:#fff;
  background:var(--purple);
  box-sizing:content-box
}

.missions-weekly-reward>div>span {
  color:var(--champagne)
}

.missions-weekly-reward>div>strong {
  color:#fff;
  font-family:var(--secondfont);
  font-size:1.55rem
}

.missions-weekly-reward>div>p {
  margin:5px 0 0;
  color:rgba(255,255,255,.7);
  font-size:.82rem;
  line-height:1.5
}

.weekly-ring {
  display:grid;
  place-items:center;
  width:132px;
  height:132px;
  margin:auto;
  border-radius:50%;
  background:conic-gradient(#d8b873 0 50%,rgba(255,255,255,.12) 50% 100%);
  animation:ring-breathe 3s ease-in-out infinite
}

.weekly-ring:before {
  position:absolute;
  width:103px;
  height:103px;
  border-radius:50%;
  background:#352342;
  content:""
}

.weekly-ring span {
  position:relative;
  z-index:2;
  text-align:center
}

.weekly-ring strong,.weekly-ring small {
  display:block;
  color:#fff
}

.weekly-ring strong {
  font-size:2.5rem;
  line-height:1
}

.weekly-caution {
  margin:0;
  padding-left:22px;
  border-left:1px solid rgba(255,255,255,.16);
  color:rgba(255,255,255,.72);
  line-height:1.58
}

.weekly-caution strong {
  color:#fff
}

.missions-how {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:18px
}

.missions-how article {
  display:grid;
  grid-template-columns:54px 1fr;
  gap:15px;
  padding:20px;
  border:1px solid var(--light-border);
  border-radius:19px;
  background:var(--surface)
}

.missions-how b {
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border-radius:15px;
  color:#fff;
  background:var(--purple)
}

.missions-how h3 {
  margin:0;
  color:var(--ink);
  font-size:1rem
}

.missions-how p {
  margin:5px 0 0;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.5
}

.missions-clarity {
  margin-top:18px;
  overflow:hidden;
  border:1px solid var(--light-border);
  border-radius:20px;
  background:var(--surface)
}

.missions-clarity summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:19px 22px;
  color:var(--ink);
  font-weight:900;
  cursor:pointer;
  list-style:none
}

.missions-clarity summary::-webkit-details-marker {
  display:none
}

.missions-clarity summary svg {
  transition:transform .2s
}

.missions-clarity[open] summary svg {
  transform:rotate(180deg)
}

.missions-clarity>div {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  padding:0 22px 21px
}

.missions-clarity p {
  margin:0;
  color:var(--muted);
  line-height:1.6
}

@keyframes coin-drift {
  0%,100% {
    transform:translateY(0) rotate(-5deg)
  }

  50% {
    transform:translateY(-9px) rotate(7deg)
  }

}

@keyframes mission-progress {
  from {
    transform:scaleX(.74)
  }

  to {
    transform:scaleX(1)
  }

}

@keyframes ring-breathe {
  0%,100% {
    filter:drop-shadow(0 0 0 rgba(216,184,115,0));
    transform:scale(1)
  }

  50% {
    filter:drop-shadow(0 0 13px rgba(216,184,115,.28));
    transform:scale(1.025)
  }

}

@media(max-width:1080px) {
  .missions-heading,.mission-snapshot>header {
    grid-template-columns:1fr;
    gap:18px
  }

  .missions-command {
    grid-template-columns:180px 1fr
  }

  .mission-progress-demo {
    grid-column:1/-1
  }

  .mission-types,.mission-snapshot-grid {
    grid-template-columns:1fr 1fr
  }

  .missions-weekly-reward {
    grid-template-columns:1fr 140px
  }

  .weekly-caution {
    grid-column:1/-1;
    padding:18px 0 0;
    border-top:1px solid rgba(255,255,255,.16);
    border-left:0
  }

}

@media(max-width:680px) {
  .romibet-missions {
    padding:58px 0
  }

  .missions-shell {
    width:calc(100% - 26px)
  }

  .missions-heading {
    grid-template-columns:1fr
  }

  .missions-heading h2 {
    font-size:2.7rem
  }

  .missions-command {
    grid-template-columns:1fr;
    padding:25px 18px
  }

  .missions-coin-visual {
    width:165px;
    height:165px
  }

  .mission-types,.mission-snapshot-grid,.missions-how,.missions-weekly-reward,.missions-clarity>div {
    grid-template-columns:1fr
  }

  .mission-snapshot {
    padding:22px 14px
  }

  .mission-snapshot-grid p {
    min-height:0
  }

  .missions-weekly-reward {
    padding:25px 18px
  }

  .weekly-ring {
    grid-row:auto
  }

  .missions-clarity summary {
    align-items:flex-start
  }

}

@media(prefers-reduced-motion:reduce) {
  .coin,.mission-progress-track i,.weekly-ring {
    animation:none!important
  }

}

/* About Romibet Casino */
.about-section.romibet-about {
  padding:88px 0!important;
  background:linear-gradient(180deg,#f7f3ee 0%,#f1ecf7 100%)!important;
  color:var(--text)
}

.about-shell {
  width:min(1320px,calc(100% - 48px));
  margin:0 auto
}

.about-layout {
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(440px,.92fr);
  gap:66px;
  align-items:start
}

.about-copy {
  max-width:720px
}

.about-eyebrow {
  display:flex;
  align-items:center;
  gap:9px;
  color:var(--purple);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase
}

.about-copy h2 {
  margin:12px 0 18px;
  color:var(--ink);
  font-family:var(--secondfont);
  font-size:clamp(3.2rem,5vw,5.6rem);
  line-height:.92
}

.about-lead {
  max-width:68ch;
  margin:0 0 25px;
  color:var(--text)!important;
  font-size:1.08rem;
  line-height:1.7
}

.about-story {
  display:grid;
  gap:15px;
  max-width:72ch
}

.about-story p {
  margin:0;
  color:var(--muted)!important;
  line-height:1.66
}

.about-actions {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:27px
}

.about-actions a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:12px 18px;
  border:1px solid var(--purple);
  border-radius:999px;
  font-size:.82rem;
  font-weight:900;
  text-decoration:none
}

.about-action-primary {
  color:#fff;
  background:var(--purple);
  box-shadow:0 10px 24px rgba(105,49,159,.18)
}

.about-action-secondary {
  color:var(--purple);
  background:var(--surface)
}

.about-platform {
  position:sticky;
  top:112px;
  padding:27px;
  border:1px solid #5a416c;
  border-radius:30px;
  background:linear-gradient(145deg,#29163f,#352342 68%,#49305a);
  box-shadow:0 22px 52px rgba(41,22,63,.2)
}

.about-platform-head span {
  color:var(--champagne);
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase
}

.about-platform-head h3 {
  max-width:16ch;
  margin:7px 0 22px;
  color:#fff!important;
  font-family:var(--secondfont);
  font-size:2rem;
  line-height:1.04
}

.about-map {
  position:relative;
  min-height:590px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:24px;
  background:radial-gradient(circle at 50% 46%,rgba(132,66,196,.28),transparent 35%),rgba(255,255,255,.035)
}

.about-map-core {
  position:absolute;
  z-index:3;
  left:50%;
  top:46%;
  display:grid;
  place-items:center;
  width:150px;
  height:150px;
  border:1px solid rgba(216,184,115,.7);
  border-radius:50%;
  color:#fff;
  background:radial-gradient(circle at 35% 25%,#8442c4,#5f278f 65%,#421e61);
  box-shadow:0 0 0 12px rgba(132,66,196,.1),0 20px 40px rgba(0,0,0,.24);
  transform:translate(-50%,-50%);
  animation:about-core-glow 4s ease-in-out infinite
}

.about-map-core span {
  color:#e9d39b;
  font-size:.63rem;
  font-weight:900;
  letter-spacing:.16em
}

.about-map-core strong {
  color:#fff!important;
  font-family:var(--secondfont);
  font-size:1.7rem;
  line-height:.8
}

.about-map-core small {
  color:rgba(255,255,255,.68);
  font-size:.62rem
}

.about-map-node {
  position:absolute;
  z-index:3;
  display:grid;
  grid-template-columns:43px 1fr;
  gap:11px;
  align-items:center;
  width:205px;
  padding:13px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:17px;
  color:#fff;
  background:rgba(255,255,255,.085);
  backdrop-filter:blur(8px)
}

.about-map-node>i,.about-map-node>svg {
  width:17px;
  height:17px;
  padding:12px;
  border-radius:13px;
  color:#352342;
  background:#d8b873;
  box-sizing:content-box
}

.about-map-node strong,.about-map-node span {
  display:block
}

.about-map-node strong {
  color:#fff!important;
  font-size:.88rem
}

.about-map-node span {
  margin-top:3px;
  color:rgba(255,255,255,.62);
  font-size:.68rem;
  line-height:1.35
}

.about-map-casino {
  top:25px;
  left:22px
}

.about-map-live {
  top:25px;
  right:22px
}

.about-map-sports {
  bottom:25px;
  left:22px
}

.about-map-rewards {
  right:22px;
  bottom:25px
}

.about-map-line {
  position:absolute;
  z-index:1;
  width:2px;
  height:155px;
  left:50%;
  top:46%;
  background:linear-gradient(180deg,rgba(216,184,115,.7),rgba(132,66,196,.15));
  transform-origin:top
}

.about-map-line:after {
  position:absolute;
  left:-3px;
  top:15%;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#e8d39d;
  box-shadow:0 0 12px rgba(216,184,115,.8);
  content:"";
  animation:about-signal 3.2s ease-in-out infinite
}

.about-map-line-a {
  transform:rotate(-47deg)
}

.about-map-line-b {
  transform:rotate(47deg)
}

.about-map-line-c {
  transform:rotate(-133deg)
}

.about-map-line-d {
  transform:rotate(133deg)
}

.about-map-line-b:after {
  animation-delay:.55s
}

.about-map-line-c:after {
  animation-delay:1.1s
}

.about-map-line-d:after {
  animation-delay:1.65s
}

.about-device-strip {
  display:grid;
  grid-template-columns:auto 1fr auto 1fr auto;
  gap:9px;
  align-items:center;
  margin-top:18px;
  padding:15px 17px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:17px;
  color:#d8b873;
  background:rgba(255,255,255,.05)
}

.about-device-strip>span {
  height:1px;
  background:rgba(216,184,115,.32)
}

.about-device-strip p {
  grid-column:1/-1;
  margin:4px 0 0;
  color:rgba(255,255,255,.65)!important;
  font-size:.72rem;
  text-align:center
}

.about-defines {
  display:grid;
  grid-template-columns:300px 1fr;
  gap:34px;
  margin-top:44px;
  padding:28px;
  border:1px solid var(--light-border);
  border-radius:27px;
  background:var(--surface);
  box-shadow:0 14px 34px rgba(41,22,63,.07)
}

.about-defines-heading span,.about-before span {
  color:var(--purple);
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase
}

.about-defines-heading h3 {
  margin:7px 0 0;
  color:var(--ink)!important;
  font-family:var(--secondfont);
  font-size:2rem;
  line-height:1.05
}

.about-defines-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px
}

.about-defines-grid article {
  display:grid;
  grid-template-columns:43px 1fr;
  gap:12px;
  padding:15px;
  border:1px solid var(--light-border);
  border-radius:16px;
  background:#f6f1fa
}

.about-defines-grid article>i,.about-defines-grid article>svg {
  width:17px;
  height:17px;
  padding:12px;
  border-radius:13px;
  color:#fff;
  background:var(--purple);
  box-sizing:content-box
}

.about-defines-grid strong {
  display:block;
  color:var(--ink)!important;
  font-size:.86rem
}

.about-defines-grid p {
  margin:4px 0 0;
  color:var(--muted)!important;
  font-size:.74rem;
  line-height:1.45
}

.about-before {
  display:grid;
  grid-template-columns:52px minmax(260px,.72fr) minmax(0,1.28fr);
  gap:16px 23px;
  align-items:center;
  margin-top:16px;
  padding:23px 27px;
  border:1px solid rgba(216,184,115,.55);
  border-radius:22px;
  background:#fffaf1
}

.about-before>i,.about-before>svg {
  width:20px;
  height:20px;
  padding:14px;
  border-radius:15px;
  color:#fff;
  background:var(--purple);
  box-sizing:content-box
}

.about-before h3 {
  margin:5px 0 0;
  color:var(--ink)!important;
  font-size:1.05rem
}

.about-before p {
  margin:0;
  color:var(--muted)!important;
  font-size:.84rem;
  line-height:1.55
}

@keyframes about-core-glow {
  0%,100% {
    box-shadow:0 0 0 12px rgba(132,66,196,.1),0 20px 40px rgba(0,0,0,.24)
  }

  50% {
    box-shadow:0 0 0 18px rgba(132,66,196,.045),0 20px 40px rgba(0,0,0,.24)
  }

}

@keyframes about-signal {
  0%,100% {
    transform:translateY(0);
    opacity:.25
  }

  50% {
    transform:translateY(95px);
    opacity:1
  }

}

@media(max-width:1100px) {
  .about-layout {
    grid-template-columns:minmax(0,1fr) 430px;
    gap:34px
  }

  .about-map-node {
    width:176px
  }

  .about-defines {
    grid-template-columns:1fr
  }

  .about-defines-heading h3 {
    max-width:none
  }

  .about-before {
    grid-template-columns:52px 1fr
  }

  .about-before>p {
    grid-column:2
  }

}

@media(max-width:900px) {
  .about-layout {
    grid-template-columns:1fr
  }

  .about-copy {
    max-width:none
  }

  .about-platform {
    position:relative;
    top:auto;
    grid-row:2
  }

  .about-map {
    min-height:540px
  }

  .about-before {
    grid-template-columns:52px 1fr
  }

  .about-before>p {
    grid-column:2
  }

  .about-story {
    max-width:none
  }

}

@media(max-width:620px) {
  .about-section.romibet-about {
    padding:58px 0!important
  }

  .about-shell {
    width:calc(100% - 26px)
  }

  .about-copy h2 {
    font-size:3rem
  }

  .about-lead {
    font-size:1rem
  }

  .about-platform {
    padding:20px 14px
  }

  .about-platform-head h3 {
    font-size:1.75rem
  }

  .about-map {
    display:grid;
    gap:10px;
    min-height:0;
    padding:156px 12px 12px
  }

  .about-map-core {
    top:80px;
    width:116px;
    height:116px
  }

  .about-map-node {
    position:relative;
    inset:auto;
    width:auto
  }

  .about-map-line {
    display:none
  }

  .about-defines {
    padding:21px 14px
  }

  .about-defines-grid {
    grid-template-columns:1fr
  }

  .about-before {
    grid-template-columns:45px 1fr;
    padding:20px 17px
  }

  .about-before>p {
    grid-column:1/-1
  }

  .about-actions a {
    width:100%
  }

}

@media(prefers-reduced-motion:reduce) {
  .about-map-core,.about-map-line:after {
    animation:none!important
  }

}

.about-section.romibet-about .about-platform {
  position:relative;
  top:auto
}

/* About layout refinement: compact, balanced and card-based */
@media(min-width:901px) {
  .about-section.romibet-about {
    padding:72px 0!important
  }

  .romibet-about .about-shell {
    width:min(1320px,calc(100% - 64px))
  }

  .romibet-about .about-layout {
    grid-template-columns:minmax(0,.88fr) minmax(520px,1.12fr);
    gap:52px;
    align-items:stretch
  }

  .romibet-about .about-copy {
    display:flex;
    flex-direction:column;
    justify-content:center;
    max-width:590px;
    padding:22px 0
  }

  .romibet-about .about-copy h2 {
    font-size:clamp(3.6rem,4.8vw,5rem);
    line-height:.91
  }

  .romibet-about .about-lead {
    margin-bottom:0;
    font-size:1.03rem;
    line-height:1.65
  }

  .romibet-about .about-actions {
    margin-top:28px
  }

  .romibet-about .about-platform {
    display:flex;
    flex-direction:column;
    padding:24px;
    border-radius:26px
  }

  .romibet-about .about-platform-head {
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:24px
  }

  .romibet-about .about-platform-head h3 {
    max-width:19ch;
    margin:5px 0 16px;
    font-size:1.75rem
  }

  .romibet-about .about-map {
    flex:1;
    min-height:420px
  }

  .romibet-about .about-map-core {
    width:132px;
    height:132px
  }

  .romibet-about .about-map-node {
    width:190px
  }

  .romibet-about .about-story {
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    max-width:none;
    margin-top:26px
  }

  .romibet-about .about-story p {
    display:flex;
    align-items:flex-start;
    min-height:100%;
    padding:20px;
    border:1px solid var(--light-border);
    border-radius:18px;
    background:rgba(255,255,255,.72);
    font-size:.89rem;
    line-height:1.55;
    box-shadow:0 8px 20px rgba(41,22,63,.04)
  }

  .romibet-about .about-defines {
    grid-template-columns:250px 1fr;
    gap:24px;
    margin-top:16px;
    padding:22px
  }

  .romibet-about .about-defines-heading h3 {
    font-size:1.7rem
  }

  .romibet-about .about-before {
    margin-top:12px;
    padding:19px 23px
  }

}

@media(min-width:901px) and (max-width:1160px) {
  .romibet-about .about-layout {
    grid-template-columns:minmax(0,.9fr) minmax(450px,1.1fr);
    gap:30px
  }

  .romibet-about .about-map-node {
    width:174px
  }

  .romibet-about .about-story {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }

}

@media(max-width:900px) {
  .romibet-about .about-story {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    max-width:none;
    margin-top:18px
  }

  .romibet-about .about-story p {
    padding:17px;
    border:1px solid var(--light-border);
    border-radius:16px;
    background:rgba(255,255,255,.72)
  }

  .romibet-about .about-defines {
    margin-top:16px
  }

}

@media(max-width:620px) {
  .romibet-about .about-story {
    grid-template-columns:1fr
  }

  .romibet-about .about-copy h2 {
    font-size:2.8rem
  }

}

.tournament-how li {
  display:block!important;
  padding:18px 20px!important
}

.tournament-how li>b {
  display:none!important
}

.romibet-faq {
  padding:82px 0;
  background:linear-gradient(180deg,#f7f3ee,#f1ecf7);
  color:var(--text);
  scroll-margin-top:90px
}

.faq-shell {
  width:min(1320px,calc(100% - 48px));
  margin:0 auto
}

.faq-heading {
  display:grid;
  grid-template-columns:minmax(380px,.9fr) minmax(460px,1.1fr);
  gap:45px 80px;
  align-items:end;
  margin-bottom:28px
}

.faq-heading>div>span {
  display:block;
  color:var(--purple);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase
}

.faq-heading h2 {
  margin:10px 0 0;
  color:var(--ink);
  font-family:var(--secondfont);
  font-size:clamp(3rem,4.8vw,5.2rem);
  line-height:.93
}

.faq-heading h2 em {
  display:block;
  color:var(--purple);
  font-style:normal
}

.faq-heading>p {
  margin:0;
  color:var(--muted);
  font-size:1.03rem;
  line-height:1.7
}

.faq-columns {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px
}

.faq-column {
  display:grid;
  align-content:start;
  gap:12px
}

.faq-column details {
  overflow:hidden;
  border:1px solid var(--light-border);
  border-radius:18px;
  background:var(--surface);
  box-shadow:0 9px 24px rgba(41,22,63,.05)
}

.faq-column summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:21px 23px;
  color:var(--ink);
  font-size:1rem;
  font-weight:850;
  cursor:pointer;
  list-style:none
}

.faq-column summary::-webkit-details-marker {
  display:none
}

.faq-column summary i,.faq-column summary svg {
  flex:0 0 auto;
  color:var(--purple);
  transition:transform .2s ease
}

.faq-column details[open] summary i,.faq-column details[open] summary svg {
  transform:rotate(45deg)
}

.faq-column details p {
  margin:0;
  padding:0 23px 22px;
  color:var(--muted);
  line-height:1.65
}

@media(max-width:900px) {
  .faq-heading {
    grid-template-columns:1fr;
    gap:18px
  }

  .faq-columns {
    grid-template-columns:1fr
  }

}

@media(max-width:620px) {
  .romibet-faq {
    padding:58px 0
  }

  .faq-shell {
    width:calc(100% - 26px)
  }

  .faq-heading h2 {
    font-size:2.75rem
  }

  .faq-column summary {
    padding:18px
  }

  .faq-column details p {
    padding:0 18px 18px
  }

}

.site-footer .romibet-logo-name {
  color:#fff!important
}

.site-footer .romibet-logo-subtitle {
  color:#dec482!important
}

/* Legal pages */
.legal-page {
  background:#f6f1f8!important;
  color:#2b2031!important
}

.legal-header {
  position:relative!important;
  background:#fff;
  border-bottom:1px solid #e8dfec
}

.legal-header .navbar {
  padding:12px 0
}

.legal-header .legal-nav {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:5px 14px;
  margin:0;
  padding:0;
  list-style:none
}

.legal-header .legal-nav a {
  color:#2b183c;
  font-size:.76rem;
  font-weight:800;
  text-decoration:none;
  text-transform:uppercase
}

.legal-hero {
  padding:76px 0 54px;
  background:radial-gradient(circle at 85% 20%,rgba(132,66,196,.18),transparent 31%),linear-gradient(135deg,#fbf8f3,#eee5f5)
}

.legal-hero .container {
  max-width:1040px
}

.legal-kicker {
  color:#813fc2;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase
}

.legal-hero h1 {
  max-width:15ch;
  margin:10px 0 16px;
  color:#29163f;
  font-family:var(--secondfont);
  font-size:clamp(3rem,6vw,5.6rem);
  line-height:.94
}

.legal-hero p {
  max-width:760px;
  color:#665c69!important;
  font-size:1.05rem;
  line-height:1.7
}

.legal-updated {
  display:inline-flex;
  margin-top:16px;
  padding:8px 13px;
  border-radius:999px;
  color:#5e2a8c;
  background:#fff;
  border:1px solid #dfd0e8;
  font-size:.8rem;
  font-weight:800
}

.legal-content {
  padding:52px 0 76px
}

.legal-content .container {
  display:grid;
  grid-template-columns:240px minmax(0,760px);
  gap:42px;
  max-width:1080px
}

.legal-toc {
  position:sticky;
  top:100px;
  align-self:start;
  padding:20px;
  border-radius:18px;
  background:#2c193e
}

.legal-toc strong {
  display:block;
  margin-bottom:10px;
  color:#e2c782
}

.legal-toc a {
  display:block;
  padding:7px 0;
  color:rgba(255,255,255,.8);
  font-size:.86rem;
  text-decoration:none
}

.legal-article {
  display:grid;
  gap:14px
}

.legal-card {
  padding:26px;
  border:1px solid #e2d7e7;
  border-radius:20px;
  background:#fff
}

.legal-card h2 {
  margin:0 0 11px;
  color:#2b183c;
  font-family:var(--secondfont);
  font-size:1.7rem
}

.legal-card p,.legal-card li {
  color:#665c69!important;
  line-height:1.7
}

.legal-card ul {
  margin:10px 0 0;
  padding-left:20px
}

.legal-callout {
  border-color:#dec482;
  background:#fffaf0
}

.legal-page .site-footer {
  margin-top:0
}

.legal-page .footer-logo {
  color:#fff
}

.legal-page .footer-main {
  padding-top:46px
}

.legal-page .footer-links-list {
  columns:2
}

.legal-page .footer-links-list li {
  break-inside:avoid
}

.legal-page .footer-legal-links {
  columns:1
}

.legal-page .legal-footer-home {
  color:#fff;
  text-decoration:none
}

.legal-page .legal-footer-home:hover {
  color:#dec482
}

@media(max-width:900px) {
  .legal-header .legal-nav {
    display:none
  }

  .legal-content .container {
    grid-template-columns:1fr
  }

  .legal-toc {
    position:relative;
    top:auto
  }

  .legal-page .footer-links-list {
    columns:1
  }

}

@media(max-width:620px) {
  .legal-hero {
    padding:54px 0 38px
  }

  .legal-hero h1 {
    font-size:2.8rem
  }

  .legal-card {
    padding:20px
  }

  .legal-content {
    padding:34px 0 50px
  }

}
