

:root {
    --body-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    --heading-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    --heading-font2: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    --theme-color: #8C52FF;
    --theme-color2: #FF2768;
    --theme-bg-light: #F6F6F6;
    --color-dark: #20232A;
    --color-gray: #F6F6F6;
    --body-text-color: #757F95;
    --color-white: #ffffff;
    --hero-overlay: rgb(5, 3, 17);
    --slider-arrow-bg: rgba(140, 82, 255, .2);
    --box-shadow: 0 0 40px 5px rgb(0 0 0 / 5%);
    --box-shadow2: 0 0 15px rgba(0, 0, 0, 0.17);
    --transition: all .5s ease-in-out;
    --transition2: all .3s ease-in-out;
    --border-info-color: rgba(0, 0, 0, 0.08);
    --border-info-color2: rgba(0, 0, 0, 0.05);
    --border-white-color: rgba(255, 255, 255, 0.08);
    --border-white-color2: rgba(255, 255, 255, 0.05);
    --footer-bg: #0B0917;
    --footer-text-color: #F5FAFF;
}

*, *:before, *:after {
  box-sizing: inherit;
}

* {
  scroll-behavior: inherit !important;
}

html, body {
  height: auto;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  box-sizing: border-box;
}

body {
  font-family: var(--body-font);
  font-style: normal;
  font-size: 16px;
  font-weight: normal;
  color: var(--body-text-color);
  line-height: 1.8;
}

a {
  color:  var(--color-dark);
  display: inline-block;
}

a, a:active, a:focus, a:hover {
  outline: none;
  -webkit-transition: all 0.3s ease-out 0s;
  -moz-transition: all 0.3s ease-out 0s;
  -o-transition: all 0.3s ease-out 0s;
  -ms-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
  text-decoration: none;
}

a:hover {
  color: var(--color-blue);
}

ul {
  margin: 0;
  padding: 0;
}

li {
  list-style: none;
}

h1, h2, h3, h4, h5, h6 {
  color:  var(--color-dark);
  margin: 0px;
  font-weight: 600;
  font-family: var(--heading-font);
  line-height: 1.2;
}

h1 {
  font-size: 40px;
}

h2 {
  font-size: 35px;
}

h3 {
  font-size: 28px;
}

h4 {
  font-size: 22px;
}

h5 {
  font-size: 18px;
}

h6 {
  font-size: 16px;
}

p {
  margin: 0px;
}

.img, img {
  max-width: 100%;
  -webkit-transition: all 0.3s ease-out 0s;
  -moz-transition: all 0.3s ease-out 0s;
  -ms-transition: all 0.3s ease-out 0s;
  -o-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
  height: auto;
}

label {
  color: #999;
  cursor: pointer;
  font-weight: 400;
}

*::-moz-selection {
  background: #d6b161;
  color: var(--color-white);
  text-shadow: none;
}

::-moz-selection {
  background: #555;
  color: var(--color-white);
  text-shadow: none;
}

::selection {
  background: #555;
  color: var(--color-white);
  text-shadow: none;
}

*::-moz-placeholder {
  color: #999;
  font-size: 16px;
  opacity: 1;
}

*::placeholder {
  color: #999;
  font-size: 16px;
  opacity: 1;
}

.theme-btn {
  font-size: 16px;
  color: var(--color-white);
  padding: 10px 24px;
  transition: all 0.5s;
  text-transform: capitalize;
  position: relative;
  border-radius: 50px;
  font-weight: 500;
  cursor: pointer;
  text-align: center;
  vertical-align: middle;
  overflow: hidden;
  border: none;
  background: var(--theme-color);
  box-shadow: var(--box-shadow);
  z-index: 1;
}

.theme-btn::before {
  content: "";
  height: 300px;
  width: 300px;
  background: var(--theme-color2);
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%) scale(0);
  transition: 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: -1;
}

.theme-btn:hover {
  color: var(--color-white);
}

.theme-btn:hover::before {
  transform: translateY(-50%) translateX(-50%) scale(1);
}

.theme-btn i {
  margin-left: 10px;
  transform: rotate(-35deg);
  transition: var(--transition2);
}

.theme-btn:hover i {
  transform: rotate(0);
}

.theme-btn span {
  margin-right: 5px;
}

.theme-btn2 {
  background: var(--color-white);
  color: var(--theme-color);
}

.theme-btn2::before {
  background: var(--theme-color);
}

.theme-btn2:hover {
  color: var(--color-white);
}

/* START M99 HEADER */
.m99-header + .main {
  margin-top: 0;
}

.m99-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: #070d09;
  color: #f4f7f1;
  border-bottom: 1px solid #42602c;
  font-family: Arial, sans-serif;
}

.m99-header-inner {
  display: grid;
  grid-template-columns: 116px minmax(0, 1fr) auto;
  align-items: center;
  gap: 32px;
  max-width: 1440px;
  margin: 0 auto;
  padding: 10px 40px;
}

.m99-brand {
  display: block;
  line-height: 0;
}

.m99-brand img {
  width: 116px;
  height: auto;
}

.m99-navigation {
  display: grid;
  grid-template-columns: repeat(9, max-content);
  justify-content: center;
  align-items: center;
  gap: 16px 22px;
  min-width: 0;
}

.m99-navigation a {
  color: #f4f7f1;
  font-size: 16px;
  line-height: 1.5;
  text-decoration: none;
}

.m99-navigation a:hover {
  color: #91df67;
}

.m99-header a:focus-visible, .m99-hero a:focus-visible {
  outline: 3px solid #d0ad58;
  outline-offset: 5px;
}

.m99-header .theme-btn, .m99-hero .theme-btn {
  background: #91df67;
  color: #0b1609;
}

.m99-header .theme-btn::before, .m99-hero .theme-btn::before {
  background: #b0ef83;
}

.m99-header .theme-btn:hover, .m99-hero .theme-btn:hover {
  color: #0b1609;
}

/* END M99 HEADER */
/* START M99 HERO */
.m99-hero {
  color: #f4f7f1;
  background-color: #070d09;
  background-image: url('../img/hero/m99-hero.png');
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  font-family: Arial, sans-serif;
}

.m99-hero-inner {
  display: flex;
  align-items: center;
  max-width: 1440px;
  min-height: max(620px, calc(100vh - 86px));
  min-height: max(620px, calc(100svh - 86px));
  margin: 0 auto;
  padding: 110px 40px 130px;
}

.m99-hero-copy {
  width: 64%;
  max-width: 820px;
}

.m99-hero .m99-hero-brand {
  margin: 0 0 24px;
  color: #91df67;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.3;
}

.m99-hero h1 {
  margin: 0 0 28px;
  color: #f4f7f1;
  font-family: Arial, sans-serif;
  font-size: clamp(42px, 5.25vw, 78px);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.035em;
}

.m99-hero h1 span {
  color: #91df67;
}

.m99-hero .m99-hero-intro {
  max-width: 535px;
  margin: 0 0 34px;
  color: #e5ece3;
  font-size: 21px;
  line-height: 1.65;
}

@media (max-width: 1200px) {
  .m99-header-inner {
    gap: 24px;
    padding: 10px 24px;
    grid-template-columns: 110px minmax(0, 1fr) auto;
  }

  .m99-brand img {
    width: 110px;
  }

  .m99-navigation {
    grid-template-columns: repeat(5, max-content);
    gap: 10px 18px;
  }

  .m99-hero-inner {
    min-height: max(650px, calc(100vh - 82px));
    min-height: max(650px, calc(100svh - 82px));
    padding: 90px 24px;
  }

  .m99-hero-copy {
    width: 70%;
  }

  .m99-hero {
    background-image: linear-gradient(90deg, #070d0980, transparent), url('../img/hero/m99-hero.png');
  }

}

@media (max-width: 850px) {
  .m99-header-inner {
    grid-template-columns: 1fr auto;
    gap: 12px;
    padding: 10px 20px 14px;
  }

  .m99-brand img {
    width: 108px;
  }

  .m99-navigation {
    grid-column: 1 / -1;
    grid-row: 2;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px 16px;
  }

  .m99-navigation a {
    font-size: 14px;
  }

  .m99-hero {
    background-image: linear-gradient(90deg, #070d09eb, #070d0990), url('../img/hero/m99-hero.png');
    background-position: 64% top;
  }

  .m99-hero-inner {
    min-height: max(630px, calc(100vh - 185px));
    min-height: max(630px, calc(100svh - 185px));
    padding: 72px 20px 100px;
  }

  .m99-hero-copy {
    width: 100%;
  }

  .m99-hero .m99-hero-brand {
    font-size: 22px;
    margin-bottom: 20px;
  }

  .m99-hero h1 {
    font-size: clamp(38px, 10vw, 58px);
  }

  .m99-hero .m99-hero-intro {
    font-size: 18px;
    max-width: 420px;
  }

}

/* END M99 HERO */
.main {
  margin-top: -16rem;
}

.pricing-btn-wrapper .theme-btn {
  width: 100%;
}

.cta-content .theme-btn {
  background: var(--theme-color);
  color: var(--color-white);
}

.portfolio-new-project .theme-btn {
  background: var(--color-white);
  color: var(--color-dark);
}

.portfolio-new-project .theme-btn:hover {
  color: var(--color-white);
}

.blog-item-info .theme-btn {
  margin-top: 10px;
}

.banner-content .theme-btn {
  margin-top: 30px;
}

.banner-content .theme-btn:hover {
  color: var(--color-dark);
}

.banner-content .theme-btn::before {
  background: var(--color-white);
}

.single-item-action .theme-btn {
  padding: 10px 15px;
  margin-right: 20px;
}

.single-item-action .theme-btn span {
  margin-right: 5px;
}

@media all and (max-width: 767px) {
  .single-item-action .theme-btn {
    margin-left: 8px;
  }

}

.faq-area .accordion-button:not(.collapsed) {
  color: var(--theme-color);
  background: transparent;
  box-shadow: inset 0 -1px 0 rgb(0 0 0 / 13%);
}

.faq-area .accordion-button:not(.collapsed) {
  border-bottom: 1px solid var(--theme-color);
}

.faq-area .accordion-button:not(.collapsed)::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.login-form .theme-btn {
  width: 100%;
}

.login-form .theme-btn::before {
  width: 420px;
  height: 420px;
  transition: var(--transition2);
}

.coming-newsletter-form .theme-btn {
  position: absolute;
  right: 5px;
  top: 5px;
  padding: 9px 15px;
}

.error-wrapper .theme-btn {
  margin-top: 30px;
}

.terms-content:not(:last-child) {
  margin-bottom: 54px;
}

.terms-content p:not(:last-child) {
  margin-bottom: 26px;
}

.terms-list li:not(:last-child) {
  margin-bottom: 16px;
}

.footer-request .theme-btn i {
  margin-left: 20px;
}

.subscribe-form .theme-btn {
  position: absolute;
  padding: 10px 18px;
  right: 3px;
  top: 3px;
}

.subscribe-form .theme-btn:hover {
  color: var(--color-white);
}

.subscribe-form .theme-btn::before {
  background: var(--theme-color2);
}

.footer-area2 .footer-instagram .theme-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.home-3 .navbar.fixed-top .theme-btn {
  background: var(--color-white);
  color: var(--theme-color);
}

.home-3 .navbar.fixed-top .theme-btn:hover {
  color: var(--color-white);
}

/* START GAME CATALOGUE */
.gm-library {
  --gm-accent: #97df68;
  --gm-ink: #f3f7f1;
  --gm-muted: #b4c3b8;
  --gm-bg: #101b14;
  --gm-line: #344b3b;
  --gm-card: #17261c;
  box-sizing: border-box;
  max-width: 1168px;
  margin: 0 auto;
  padding: clamp(20px, 4vw, 48px);
  color: var(--gm-ink);
  background: var(--gm-bg);
  border: 1px solid var(--gm-line);
  border-radius: 20px;
  font: 16px/1.6 system-ui, sans-serif;
}

.gm-library * {
  box-sizing: border-box;
}

.gm-library [hidden] {
  display: none !important;
}

.gm-library h2, .gm-library h3, .gm-library h4, .gm-library p {
  margin: 0 0 12px;
  color: var(--gm-ink);
  font-family: inherit;
  text-transform: none;
}

.gm-library h2 {
  font-size: clamp(30px, 4vw, 44px);
  line-height: 1.15;
  letter-spacing: -0.025em;
}

.gm-library h3 {
  font-size: 28px;
  line-height: 1.25;
}

.gm-library h4 {
  font-size: 21px;
  line-height: 1.3;
}

.gm-library p {
  color: var(--gm-muted);
}

.gm-library .gm-eyebrow {
  color: var(--gm-accent);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.gm-library .gm-demo-note {
  font-size: 14px;
  color: #d4bb7e;
}

.gm-library .gm-switcher {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  min-width: 0;
  border: 0;
  padding: 0;
  margin: 24px 0;
}

.gm-library .gm-main-switcher {
  padding-bottom: 24px;
  border-bottom: 1px solid var(--gm-line);
}

.gm-library .gm-choice, .gm-library .gm-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.gm-library .gm-tab {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 48px;
  max-width: 100%;
  padding: 10px 20px;
  border: 1px solid var(--gm-line);
  border-radius: 10px;
  cursor: pointer;
  background: var(--gm-card);
  color: var(--gm-muted);
  font-weight: 650;
  text-align: center;
  margin-bottom: 0;
}

.gm-library .gm-main-switcher .gm-tab {
  flex: 1 1 0;
  font-size: 18px;
}

.gm-library .gm-tab:hover {
  border-color: var(--gm-accent);
  color: var(--gm-ink);
}

.gm-library .gm-choice:checked + label {
  background: var(--gm-accent);
  border-color: var(--gm-accent);
  color: #101b14;
  box-shadow: inset 0 -3px 0 #558236;
}

.gm-library .gm-choice:focus-visible + label {
  outline: 3px solid #fff;
  outline-offset: 4px;
}

.gm-library .gm-panel {
  margin-top: 24px;
}

.gm-library .gm-panel-intro {
  max-width: 800px;
  margin-bottom: 22px;
}

.gm-library .gm-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  align-items: start;
}

.gm-library .gm-game {
  min-width: 0;
  background: var(--gm-card);
  border: 1px solid var(--gm-line);
  border-radius: 14px;
  overflow: hidden;
}

.gm-library summary {
  list-style: none;
  cursor: pointer;
}

.gm-library summary::-webkit-details-marker {
  display: none;
}

.gm-library summary:focus-visible {
  outline: 3px solid var(--gm-accent);
  outline-offset: -4px;
  border-radius: 14px;
}

.gm-library summary img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  background: #0b140f;
}

.gm-library .gm-card-copy {
  display: block;
  padding: 20px;
}

.gm-library .gm-name {
  display: block;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.gm-library .gm-hint {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 44px;
  margin-top: 20px;
  padding: 8px 14px;
  border: 1px solid #527a42;
  border-radius: 8px;
  color: var(--gm-accent);
  font-weight: 650;
  font-size: 14px;
}

.gm-library .gm-hint::after {
  content: '+';
  font-size: 22px;
  line-height: 1;
}

.gm-library details[open] .gm-hint::after {
  content: '−';
}

.gm-library details[open] .gm-hint {
  background: #263e22;
}

.gm-library .gm-description {
  padding: 0 20px 22px;
  font-size: 16px;
  overflow-wrap: anywhere;
}

.gm-library dl {
  margin: 0;
  border-top: 1px solid var(--gm-line);
  padding-top: 4px;
}

.gm-library dt {
  font-weight: 700;
  margin: 14px 0 4px;
}

.gm-library dd {
  margin: 0;
  color: var(--gm-muted);
}

@media (max-width: 600px) {
  .gm-library {
    border-radius: 0;
    border-right: 0;
    border-left: 0;
  }

  .gm-library .gm-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .gm-library .gm-main-switcher {
    gap: 6px;
  }

  .gm-library .gm-main-switcher .gm-tab {
    padding: 10px 8px;
    font-size: 14px;
  }

}

/* END GAME CATALOGUE */
/* START M99 SLOTS */
.gm-library:has(#slots-panel:not([hidden])) {
  max-width: 1600px;
  padding: clamp(20px, 3vw, 40px);
}

.gm-library:has(#slots-panel:not([hidden])) .gm-demo-note {
  display: none;
}

#slots-panel .gm-panel-intro {
  max-width: none;
}

#slots-panel .gm-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 18px;
}

#slots-panel .gm-game {
  border-radius: 10px;
}

#slots-panel .gm-card-copy {
  padding: 10px;
}

#slots-panel .gm-name {
  min-height: 0;
  font-size: 16px;
  line-height: 1.3;
  overflow-wrap: normal;
}

#slots-panel .gm-hint {
  margin-top: 8px;
  min-height: 36px;
  padding: 5px 8px;
}

#slots-panel .gm-description {
  padding: 0 14px 20px;
  font-size: 15px;
  line-height: 1.65;
}

#slots-panel summary img {
  width: 100%;
  height: auto;
  aspect-ratio: auto;
  object-fit: contain;
}

@media (max-width: 1399px) {
  #slots-panel .gm-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

}

@media (max-width: 999px) {
  #slots-panel .gm-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

}

@media (max-width: 739px) {
  #slots-panel .gm-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

}

@media (max-width: 429px) {
  #slots-panel .gm-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  #slots-panel .gm-name {
    min-height: 0;
    font-size: 19px;
  }

  #slots-panel .gm-description {
    font-size: 16px;
  }

}

/* END M99 SLOTS */
/* START SLOTS WIDE DESCRIPTION */
#slots-panel .gm-grid.gm-wide-ready {
  position: relative;
  margin-bottom: var(--gm-description-space, 0px);
}

#slots-panel .gm-wide-ready .gm-game {
  overflow: visible;
}

#slots-panel .gm-wide-ready summary {
  overflow: hidden;
  border-radius: 10px;
}

#slots-panel .gm-wide-ready .gm-description {
  position: absolute;
  left: 0;
  top: calc(100% + 18px);
  width: 100%;
  padding: 20px 24px 24px;
  border: 1px solid #527a42;
  border-radius: 12px;
  background: #17261c;
  font-size: 16px;
}

#slots-panel .gm-wide-ready .gm-description dl {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px 28px;
  border: 0;
}

#slots-panel .gm-wide-ready .gm-rule {
  min-width: 0;
}

#slots-panel .gm-wide-ready .gm-rule:first-child {
  grid-column: 1 / -1;
}

#slots-panel .gm-wide-ready .gm-rule:first-child dd {
  color: #97df68;
  font-size: 20px;
  font-weight: 700;
}

#slots-panel .gm-wide-ready dt {
  margin-top: 0;
}

@media (max-width: 999px) {
  #slots-panel .gm-wide-ready .gm-description dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

}

@media (max-width: 599px) {
  #slots-panel .gm-wide-ready .gm-description dl {
    grid-template-columns: 1fr;
  }

  #slots-panel .gm-wide-ready .gm-description {
    padding: 18px;
  }

}

/* END SLOTS WIDE DESCRIPTION */
/* START M99 LIVE CASINO */
.gm-library:has(#live-casino-panel:not([hidden])) {
  max-width: 1600px;
  padding: clamp(20px, 3vw, 40px);
}

.gm-library:has(#live-casino-panel:not([hidden])) .gm-demo-note {
  display: none;
}

#live-casino-panel .gm-panel-intro {
  max-width: none;
}

#live-casino-panel .gm-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 18px;
}

#live-casino-panel .gm-game {
  border-radius: 10px;
}

#live-casino-panel .gm-card-copy {
  padding: 10px;
}

#live-casino-panel .gm-name {
  min-height: 0;
  font-size: 16px;
  line-height: 1.3;
  overflow-wrap: normal;
}

#live-casino-panel .gm-hint {
  margin-top: 8px;
  min-height: 36px;
  padding: 5px 8px;
}

#live-casino-panel .gm-description {
  padding: 0 14px 20px;
  font-size: 15px;
  line-height: 1.65;
}

#live-casino-panel summary img {
  width: 100%;
  height: auto;
  aspect-ratio: auto;
  object-fit: contain;
}

@media (max-width: 1399px) {
  #live-casino-panel .gm-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

}

@media (max-width: 999px) {
  #live-casino-panel .gm-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

}

@media (max-width: 739px) {
  #live-casino-panel .gm-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

}

@media (max-width: 429px) {
  #live-casino-panel .gm-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  #live-casino-panel .gm-name {
    min-height: 0;
    font-size: 19px;
  }

  #live-casino-panel .gm-description {
    font-size: 16px;
  }

}

/* END M99 LIVE CASINO */
/* START LIVE WIDE DESCRIPTION */
#live-casino-panel .gm-grid.gm-wide-ready {
  position: relative;
  margin-bottom: var(--gm-description-space, 0px);
}

#live-casino-panel .gm-wide-ready .gm-game {
  overflow: visible;
}

#live-casino-panel .gm-wide-ready summary {
  overflow: hidden;
  border-radius: 10px;
}

#live-casino-panel .gm-wide-ready .gm-description {
  position: absolute;
  left: 0;
  top: calc(100% + 18px);
  width: 100%;
  padding: 20px 24px 24px;
  border: 1px solid #527a42;
  border-radius: 12px;
  background: #17261c;
  font-size: 16px;
}

#live-casino-panel .gm-wide-ready .gm-description dl {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px 28px;
  border: 0;
}

#live-casino-panel .gm-wide-ready .gm-rule {
  min-width: 0;
}

#live-casino-panel .gm-wide-ready .gm-rule:first-child {
  grid-column: 1 / -1;
}

#live-casino-panel .gm-wide-ready .gm-rule:first-child dd {
  color: #97df68;
  font-size: 20px;
  font-weight: 700;
}

#live-casino-panel .gm-wide-ready dt {
  margin-top: 0;
}

@media (max-width: 999px) {
  #live-casino-panel .gm-wide-ready .gm-description dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

}

@media (max-width: 599px) {
  #live-casino-panel .gm-wide-ready .gm-description dl {
    grid-template-columns: 1fr;
  }

  #live-casino-panel .gm-wide-ready .gm-description {
    padding: 18px;
  }

}

/* END LIVE WIDE DESCRIPTION */
/* START M99 GAMES */
.gm-library:has(#games-panel:not([hidden])) {
  max-width: 1600px;
  padding: clamp(20px, 3vw, 40px);
}

.gm-library:has(#games-panel:not([hidden])) .gm-demo-note {
  display: none;
}

#games-panel .gm-panel-intro {
  max-width: none;
}

#games-panel .gm-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

#games-panel .gm-game {
  border-radius: 10px;
}

#games-panel .gm-card-copy {
  padding: 10px;
}

#games-panel .gm-name {
  min-height: 0;
  font-size: 16px;
  line-height: 1.3;
  overflow-wrap: normal;
}

#games-panel .gm-hint {
  margin-top: 8px;
  min-height: 36px;
  padding: 5px 8px;
}

#games-panel .gm-description {
  padding: 0 14px 20px;
  font-size: 15px;
  line-height: 1.65;
}

#games-panel summary img {
  width: 100%;
  height: auto;
  aspect-ratio: auto;
  object-fit: contain;
}

@media (max-width: 1399px) {
  #games-panel .gm-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

}

@media (max-width: 999px) {
  #games-panel .gm-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

}

@media (max-width: 739px) {
  #games-panel .gm-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

}

@media (max-width: 429px) {
  #games-panel .gm-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  #games-panel .gm-name {
    min-height: 0;
    font-size: 19px;
  }

  #games-panel .gm-description {
    font-size: 16px;
  }

}

/* END M99 GAMES */
/* START GAMES WIDE DESCRIPTION */
#games-panel .gm-grid.gm-wide-ready {
  position: relative;
  margin-bottom: var(--gm-description-space, 0px);
}

#games-panel .gm-wide-ready .gm-game {
  overflow: visible;
}

#games-panel .gm-wide-ready summary {
  overflow: hidden;
  border-radius: 10px;
}

#games-panel .gm-wide-ready .gm-description {
  position: absolute;
  left: 0;
  top: calc(100% + 18px);
  width: 100%;
  padding: 20px 24px 24px;
  border: 1px solid #527a42;
  border-radius: 12px;
  background: #17261c;
  font-size: 16px;
}

#games-panel .gm-wide-ready .gm-description dl {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px 28px;
  border: 0;
}

#games-panel .gm-wide-ready .gm-rule {
  min-width: 0;
}

#games-panel .gm-wide-ready .gm-rule:first-child {
  grid-column: 1 / -1;
}

#games-panel .gm-wide-ready .gm-rule:first-child dd {
  color: #97df68;
  font-size: 20px;
  font-weight: 700;
}

#games-panel .gm-wide-ready dt {
  margin-top: 0;
}

@media (max-width: 999px) {
  #games-panel .gm-wide-ready .gm-description dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

}

@media (max-width: 599px) {
  #games-panel .gm-wide-ready .gm-description dl {
    grid-template-columns: 1fr;
  }

  #games-panel .gm-wide-ready .gm-description {
    padding: 18px;
  }

}

/* END GAMES WIDE DESCRIPTION */
@media (min-width: 1400px) {
  #games-instant-panel .gm-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

}

/* Catalogue card alignment */
.gm-library .gm-grid {
  align-items: stretch;
}

.gm-library .gm-game > details {
  height: 100%;
}

.gm-library .gm-game > details > summary {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.gm-library .gm-game .gm-card-copy {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.gm-library .gm-game .gm-name {
  flex: 1;
}

#slots-panel summary img, #live-casino-panel summary img {
  aspect-ratio: 16 / 10;
  height: auto;
  object-fit: contain;
}

/* M99 Sports Betting */
.m99-sports {
  max-width:1600px;
  margin:32px auto;
  padding:clamp(24px,3vw,40px);
  background:#0d1b12;
  border:1px solid #304c36;
  border-radius:20px;
  color:#c4d0c6;
  font:17px/1.65 Arial,sans-serif;
}

.m99-sports-lead {
  display:grid;
  grid-template-columns:1.05fr 1fr;
  gap:36px;
  align-items:center;
}

.m99-sports h2 {
  color:#f3f6f1;
  font:700 clamp(30px,3.2vw,48px)/1.12 Arial,sans-serif;
  margin:0 0 20px;
}

.m99-sports p {
  margin:0 0 14px;
}

.m99-sports-image {
  display:block;
  width:100%;
  height:auto;
  max-height:330px;
  object-fit:contain;
  border-radius:12px;
}

.m99-sports-basics {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px 36px;
  margin:30px 0;
}

.m99-sports-basics article {
  border-top:1px solid #35503b;
  padding-top:20px;
  min-width:0;
}

.m99-sports h3 {
  color:#f3f6f1;
  font:700 21px/1.3 Arial,sans-serif;
  margin:0 0 12px;
}

.m99-sports .m99-sports-example {
  background:#17291c;
  border-left:3px solid #97df68;
  padding:12px 16px;
  margin:12px 0 0;
}

.m99-sports summary {
  cursor:pointer;
  list-style:none;
}

.m99-sports summary::-webkit-details-marker {
  display:none;
}

.m99-sports summary:focus-visible {
  outline:3px solid #c4fb92;
  outline-offset:4px;
}

.m99-sports-guide>summary {
  display:flex;
  justify-content:space-between;
  gap:20px;
  background:#97df68;
  color:#102014;
  padding:14px 20px;
  border-radius:10px;
  font-weight:700;
}

.m99-sports-guide>summary span {
  font-size:24px;
  line-height:1;
}

.m99-sports-guide[open]>summary span {
  transform:rotate(45deg);
}

.m99-sports-guide-body {
  padding-top:24px;
}

.m99-sports-guide-body>details {
  border-top:1px solid #35503b;
  padding:16px 0;
}

.m99-sports-guide-body>details>summary {
  color:#f3f6f1;
  font-weight:700;
}

.m99-sports-guide-body>details>summary::after {
  content:'+';
  float:right;
  color:#97df68;
}

.m99-sports-guide-body>details[open]>summary::after {
  content:'−';
}

.m99-sports-guide-body>details p:first-of-type {
  margin-top:16px;
}

@media(max-width:1632px) {
  .m99-sports {
    margin-left:16px;
    margin-right:16px;
  }

}

@media(max-width:760px) {
  .m99-sports-lead,.m99-sports-basics {
    grid-template-columns:1fr;
    gap:20px;
  }

  .m99-sports-image {
    max-height:240px;
  }

  .m99-sports {
    font-size:16px;
  }

}

/* M99 page surfaces and section hierarchy */
html, body, body .main {
  background:#0b0e12;
}

body .main {
  padding-bottom:32px;
}

.gm-library {
  --gm-bg:#14191f;
  --gm-card:#222a32;
  --gm-line:#3a434d;
  --gm-muted:#c8ced5;
  --gm-ink:#f5f6f8;
  border-color:#343e48;
  border-radius:16px;
}

#slots-panel .gm-wide-ready .gm-description, #live-casino-panel .gm-wide-ready .gm-description, #games-panel .gm-wide-ready .gm-description {
  background:#222a32;
  border-color:#586573;
}

.m99-sports {
  background:#1c222a;
  border-color:#46515e;
  color:#d4d9df;
  border-radius:16px;
  margin-top:40px;
  font-size:18px;
}

.m99-sports-lead {
  grid-template-columns:1fr 1fr;
  gap:40px;
}

.m99-sports-lead>* {
  min-width:0;
}

.m99-sports h2 {
  font-size:clamp(38px,4.5vw,64px);
  color:#fff;
  margin-bottom:12px;
  letter-spacing:-.025em;
}

.m99-sports .m99-sports-subtitle {
  font-size:clamp(20px,2vw,26px);
  line-height:1.35;
  color:#d9e0e8;
  margin-bottom:24px;
}

.m99-sports-image {
  background:#0b0e12;
  border:1px solid #56616d;
  padding:8px;
  max-height:340px;
  box-shadow:0 12px 28px #0004;
}

.m99-sports-basics {
  gap:20px;
  margin:32px 0;
  align-items:start;
}

.m99-sports-basics article {
  background:#11171e;
  border:1px solid #39434f;
  border-radius:12px;
  padding:24px;
}

.m99-sports h3 {
  font-size:23px;
  color:#fff;
}

.m99-sports .m99-sports-example {
  background:#242d37;
  border-left-color:#97df68;
}

.m99-sports-guide-body {
  background:#11171e;
  margin-top:16px;
  padding:24px;
  border-radius:12px;
}

.m99-sports-guide-body>details {
  border-color:#45515e;
}

.m99-sports-guide>summary {
  max-width:430px;
}

@media(max-width:760px) {
  .m99-sports-lead {
    grid-template-columns:1fr;
    gap:24px;
  }

  .m99-sports {
    font-size:17px;
  }

  .m99-sports-basics article,.m99-sports-guide-body {
    padding:18px;
  }

  .m99-sports-image {
    max-height:260px;
  }

}

/* Anchor clearance below the sticky header */
#casino, #sports {
  scroll-margin-top:100px;
}

@media(max-width:850px) {
  #casino, #sports {
    scroll-margin-top:150px;
  }

}

/* Keep the viewport as the sticky header scroll container. */
html, body {
  overflow-x:clip;
}

/* START M99 BONUSES */
.m99-bonuses {
  max-width:1600px;
  margin:64px auto 32px;
  padding:40px;
  border-top:3px solid #d6b66a;
  background:#171b22;
  border-radius:0 0 16px 16px;
  color:#d7dce3;
  font:17px/1.6 Arial,sans-serif;
  scroll-margin-top:110px;
}

.m99-bonuses * {
  box-sizing:border-box;
}

.m99-bonuses h2 {
  color:#fff;
  font:700 clamp(36px,4vw,58px)/1.1 Arial,sans-serif;
  margin:0 0 20px;
}

.m99-bonuses p {
  margin:0 0 14px;
}

.m99-bonuses .m99-bonuses-kicker,.m99-bonuses .m99-bonus-type {
  color:#e3c789;
  font-size:14px;
  font-weight:700;
  letter-spacing:.06em;
}

.m99-bonuses-notice {
  padding:16px 20px;
  border-left:3px solid #d6b66a;
  background:#272a30;
}

.m99-bonus-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  margin-top:28px;
  align-items:stretch;
}

.m99-bonus-card {
  display:flex;
  flex-direction:column;
  padding:24px;
  border:1px solid #444d59;
  background:#222831;
  border-radius:14px;
  min-width:0;
}

.m99-bonuses .m99-bonus-value {
  font-size:clamp(32px,3vw,46px);
  font-weight:700;
  line-height:1.15;
  color:#f1d391;
  margin:14px 0;
}

.m99-bonuses h3 {
  font:700 23px/1.3 Arial,sans-serif;
  color:#fff;
  margin:0 0 14px;
}

.m99-bonus-card>.m99-bonus-key {
  flex:1;
}

.m99-bonus-key {
  font-size:15px;
  color:#c2cbd6;
  border-top:1px solid #46515e;
  padding-top:16px;
}

.m99-bonuses summary {
  display:block;
  list-style:none;
  cursor:pointer;
  color:#f3d794;
  border:1px solid #8d7b54;
  border-radius:8px;
  padding:10px 14px;
  font-weight:700;
}

.m99-bonuses summary::-webkit-details-marker {
  display:none;
}

.m99-bonuses summary::after {
  content:'+';
  float:right;
}

.m99-bonuses details[open]>summary::after {
  content:'−';
}

.m99-bonuses summary:focus-visible {
  outline:3px solid #f1d391;
  outline-offset:3px;
}

.m99-bonus-detail {
  padding-top:18px;
  font-size:16px;
}

.m99-bonus-topups {
  margin-top:28px;
  padding:28px;
  background:#222831;
  border:1px solid #444d59;
  border-radius:14px;
}

.m99-bonus-table-wrap {
  overflow-x:auto;
  margin:18px 0;
}

.m99-bonuses table {
  width:100%;
  border-collapse:collapse;
  text-align:left;
  color:#e8edf4;
}

.m99-bonuses caption {
  text-align:left;
  color:#c8d0da;
  padding-bottom:10px;
}

.m99-bonuses th,.m99-bonuses td {
  padding:12px 16px;
  border-bottom:1px solid #47515d;
}

.m99-bonuses th {
  background:#11161d;
  color:#f1d391;
}

.m99-bonuses .m99-bonuses-footnote {
  margin:24px 0 0;
  color:#bac4cf;
  font-size:15px;
}

@media(max-width:1632px) {
  .m99-bonuses {
    margin-left:16px;
    margin-right:16px;
  }

}

@media(max-width:1100px) {
  .m99-bonus-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

}

@media(max-width:700px) {
  .m99-bonuses {
    padding:24px 18px;
    margin-top:44px;
    scroll-margin-top:150px;
  }

  .m99-bonus-grid {
    grid-template-columns:1fr;
  }

  .m99-bonus-card,.m99-bonus-topups {
    padding:20px;
  }

  .m99-bonuses th,.m99-bonuses td {
    padding:10px 8px;
  }

}

/* END M99 BONUSES */
/* START M99 VIP */
.m99-vip {
  max-width:1600px;
  margin:64px auto 32px;
  padding:40px;
  border-top:3px solid #a8bce5;
  background:#1b202a;
  border-radius:0 0 16px 16px;
  color:#d8dfe9;
  font:17px/1.65 Arial,sans-serif;
  scroll-margin-top:110px;
}

.m99-vip * {
  box-sizing:border-box;
}

.m99-vip header {
  max-width:1080px;
}

.m99-vip h2 {
  color:#fff;
  font:700 clamp(36px,4vw,56px)/1.15 Arial,sans-serif;
  margin:0 0 20px;
}

.m99-vip h3 {
  color:#fff;
  font:700 26px/1.3 Arial,sans-serif;
  margin:30px 0 14px;
}

.m99-vip h4 {
  color:#f6f8ff;
  font:700 20px/1.4 Arial,sans-serif;
  margin:0 0 12px;
}

.m99-vip p {
  margin:0 0 14px;
}

.m99-vip .m99-vip-kicker {
  color:#b6c8ec;
  font-size:14px;
  font-weight:700;
  letter-spacing:.06em;
}

.m99-vip-facts {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
  margin:28px 0;
}

.m99-vip-facts p {
  padding:22px;
  background:#101720;
  border:1px solid #4d5d75;
  border-radius:12px;
  margin:0;
}

.m99-vip-facts strong {
  display:block;
  font-size:28px;
  color:#c9d9fb;
  margin-bottom:8px;
}

.m99-vip-facts span {
  display:block;
}

.m99-vip-notice {
  padding:18px 22px;
  border-left:3px solid #a8bce5;
  background:#2b3240;
}

.m99-vip-path {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}

.m99-vip-path article,.m99-vip-separate article {
  padding:24px;
  border:1px solid #434f61;
  border-radius:12px;
  background:#141b24;
}

.m99-vip-table {
  overflow-x:auto;
  border:1px solid #54627a;
  border-radius:12px;
  margin:20px 0 12px;
}

.m99-vip table {
  width:100%;
  border-collapse:collapse;
  text-align:left;
  color:#d8dfe9;
}

.m99-vip th,.m99-vip td {
  padding:16px 18px;
  border-bottom:1px solid #465267;
}

.m99-vip thead {
  background:#101720;
  color:#c9d9fb;
}

.m99-vip tbody tr:nth-child(even) {
  background:#252d3a;
}

.m99-vip tbody th {
  font-weight:400;
}

.m99-vip tbody th span {
  display:block;
  color:#d9c18b;
  white-space:nowrap;
}

.m99-vip td strong {
  color:#f2f6ff;
  font-size:21px;
  white-space:nowrap;
}

.m99-vip .m99-vip-table-note {
  color:#bdc9d9;
  font-size:15px;
}

.m99-vip-details {
  margin-top:24px;
}

.m99-vip summary {
  list-style:none;
  cursor:pointer;
  padding:14px 20px;
  border:1px solid #9bb2da;
  border-radius:10px;
  background:#b6c8ec;
  color:#101720;
  font-weight:700;
}

.m99-vip summary::-webkit-details-marker {
  display:none;
}

.m99-vip summary::after {
  content:'+';
  float:right;
}

.m99-vip details[open]>summary::after {
  content:'−';
}

.m99-vip summary:focus-visible {
  outline:3px solid #d7e4ff;
  outline-offset:4px;
}

.m99-vip-details>div {
  padding:24px;
  margin-top:14px;
  border-radius:12px;
  background:#101720;
}

.m99-vip-details h4:not(:first-child) {
  margin-top:22px;
}

.m99-vip-separate {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  margin-top:28px;
}

.m99-vip-separate h3 {
  margin-top:0;
}

@media(max-width:1632px) {
  .m99-vip {
    margin-left:16px;
    margin-right:16px;
  }

}

@media(max-width:760px) {
  .m99-vip {
    padding:24px 18px;
    margin-top:44px;
    scroll-margin-top:150px;
  }

  .m99-vip-facts,.m99-vip-path,.m99-vip-separate {
    grid-template-columns:1fr;
  }

  .m99-vip-table {
    font-size:14px;
  }

  .m99-vip th,.m99-vip td {
    padding:12px 9px;
  }

  .m99-vip td strong {
    font-size:17px;
  }

}

/* END M99 VIP */
/* Bonuses and VIP decorative heading artwork */
.m99-bonuses>.m99-decorated-heading,.m99-vip>.m99-decorated-heading {
  display:grid;
  grid-template-columns:minmax(0,1fr) 270px;
  align-items:center;
  gap:40px;
  max-width:none;
  margin-bottom:24px;
}

.m99-heading-copy {
  min-width:0;
}

.m99-section-art {
  position:relative;
  display:grid;
  place-items:center;
  width:270px;
  height:230px;
  color:#edcc82;
  isolation:isolate;
  background:radial-gradient(ellipse at center,#c6a54c19,transparent 70%);
}

.m99-vip .m99-section-art {
  color:#c8daff;
  background:radial-gradient(ellipse at center,#83a6e921,transparent 70%);
}

.m99-art-medallion {
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  width:160px;
  height:160px;
  border:1px solid #d9b966;
  border-radius:38px;
  transform:rotate(-9deg);
  background:linear-gradient(145deg,#645132,#2c2926 48%,#1b2028);
  box-shadow:inset 0 2px 0 #ffebbc50,inset 0 -5px 12px #0005,14px 20px 34px #0005;
}

.m99-vip .m99-art-medallion {
  border-color:#9fb9e7;
  border-radius:50%;
  background:linear-gradient(145deg,#526886,#2a3446 48%,#1c222d);
  box-shadow:inset 0 2px 0 #e4edff60,inset 0 -5px 12px #0005,14px 20px 34px #0005;
  transform:rotate(8deg);
}

.m99-art-medallion svg {
  width:112px;
  height:112px;
  transform:rotate(9deg);
  filter:drop-shadow(0 3px 2px #0006);
}

.m99-vip .m99-art-medallion svg {
  transform:rotate(-8deg);
}

.m99-art-orbit {
  position:absolute;
  width:250px;
  height:135px;
  border:1px solid currentColor;
  opacity:.3;
  border-radius:50%;
  transform:rotate(-28deg);
}

.m99-art-orbit::after {
  content:'';
  position:absolute;
  inset:-22px 25px;
  border:1px solid currentColor;
  border-radius:50%;
  transform:rotate(65deg);
}

.m99-art-spark {
  position:absolute;
  color:inherit;
}

.m99-art-spark-a {
  top:12px;
  right:25px;
  font-size:32px;
}

.m99-art-spark-b {
  bottom:20px;
  left:24px;
  font-size:20px;
  opacity:.7;
}

@media(max-width:1000px) {
  .m99-bonuses>.m99-decorated-heading,.m99-vip>.m99-decorated-heading {
    grid-template-columns:minmax(0,1fr) 190px;
    gap:20px;
  }

  .m99-section-art {
    width:190px;
    height:200px;
  }

  .m99-art-medallion {
    width:130px;
    height:130px;
  }

  .m99-art-medallion svg {
    width:92px;
    height:92px;
  }

  .m99-art-orbit {
    width:180px;
    height:100px;
  }

}

@media(max-width:650px) {
  .m99-bonuses>.m99-decorated-heading,.m99-vip>.m99-decorated-heading {
    grid-template-columns:minmax(0,1fr);
    gap:8px;
  }

  .m99-section-art {
    justify-self:end;
    width:140px;
    height:130px;
  }

  .m99-art-medallion {
    width:96px;
    height:96px;
    border-radius:26px;
  }

  .m99-art-medallion svg {
    width:70px;
    height:70px;
  }

  .m99-art-orbit {
    width:138px;
    height:80px;
  }

  .m99-art-spark-a {
    top:0;
    right:0;
    font-size:22px;
  }

  .m99-art-spark-b {
    left:0;
    bottom:8px;
    font-size:16px;
  }

}

/* Vivid Bonuses and VIP accents */
.m99-bonuses {
  border-top-color:#f6c650;
  background:radial-gradient(ellipse at 100% 0,#79501845,transparent 42%),#171b22;
}

.m99-vip {
  border-top-color:#9bdd69;
  background:radial-gradient(ellipse at 100% 0,#216c594d,transparent 40%),#182127;
}

.m99-bonuses>.m99-decorated-heading,.m99-vip>.m99-decorated-heading {
  padding:28px;
  border-radius:16px;
  border:1px solid #8a692f;
  background:linear-gradient(115deg,#3a301b,#242620 55%,#475222);
}

.m99-vip>.m99-decorated-heading {
  border-color:#4b9179;
  background:linear-gradient(115deg,#143f39,#233738 55%,#385c32);
}

.m99-bonuses .m99-bonuses-kicker,.m99-vip .m99-vip-kicker {
  display:inline-block;
  border-radius:6px;
  padding:5px 10px;
  background:#f6ca63;
  color:#30230c;
}

.m99-vip .m99-vip-kicker {
  background:#a0e777;
  color:#153322;
}

.m99-bonuses .m99-section-art {
  color:#ffdf83;
  background:radial-gradient(ellipse,#eab93638,transparent 70%);
}

.m99-bonuses .m99-art-medallion {
  background:linear-gradient(145deg,#b18a33,#725421 50%,#302a1a);
  border-color:#ffdc70;
  box-shadow:inset 0 2px 0 #fff1b780,0 12px 35px #ecc05222;
}

.m99-vip .m99-section-art {
  color:#d6ffb1;
  background:radial-gradient(ellipse,#a0e77730,transparent 70%);
}

.m99-vip .m99-art-medallion {
  background:linear-gradient(145deg,#78a95a,#2b7358 48%,#163b35);
  border-color:#b5ef86;
  box-shadow:inset 0 2px 0 #eaffb680,0 12px 35px #a0e77722;
}

.m99-bonus-card {
  border-color:#75603c;
  border-top:4px solid #e8b947;
  background:linear-gradient(145deg,#343023,#20262e 48%);
}

.m99-bonus-card:nth-child(3n+2) {
  border-top-color:#99df68;
  background:linear-gradient(145deg,#28382b,#20262e 48%);
}

.m99-bonus-card:nth-child(3n) {
  border-top-color:#edaa60;
  background:linear-gradient(145deg,#3b2d24,#20262e 48%);
}

.m99-bonuses .m99-bonus-value {
  color:#ffdc79;
  font-size:clamp(36px,3.4vw,54px);
}

.m99-bonus-card:nth-child(3n+2) .m99-bonus-value {
  color:#b0f382;
}

.m99-bonuses summary {
  background:#f5ca65;
  border-color:#f5ca65;
  color:#29210f;
  box-shadow:0 3px 0 #856b32;
}

.m99-bonuses summary:hover {
  background:#ffe098;
}

.m99-bonuses summary:focus-visible {
  outline-color:#fff0bb;
}

.m99-bonuses .m99-bonus-type {
  color:#ffe198;
}

.m99-bonus-topups {
  border-color:#8e7135;
  background:linear-gradient(120deg,#303026,#222831 65%);
}

.m99-bonuses th {
  background:#4a3b1e;
  color:#ffe29b;
}

.m99-bonuses td:last-child {
  color:#b0f382;
  font-weight:700;
}

.m99-vip-facts p {
  border-color:#5d9a71;
  border-top:4px solid #9bdd69;
  background:linear-gradient(135deg,#244936,#162923);
}

.m99-vip-facts p:nth-child(2) {
  border-top-color:#efca73;
  background:linear-gradient(135deg,#47402b,#242b26);
}

.m99-vip-facts strong {
  color:#c5ff9d;
}

.m99-vip-facts p:nth-child(2) strong {
  color:#ffdf8f;
}

.m99-vip-path article {
  border-color:#426452;
}

.m99-vip table thead {
  background:#254e3b;
  color:#d4ffb3;
}

.m99-vip tbody th span {
  color:#ffda73;
  font-size:20px;
}

.m99-vip td strong {
  color:#c5ff9d;
}

.m99-vip tbody tr:nth-child(even) {
  background:#23382f;
}

.m99-vip tbody tr:last-child {
  background:#334432;
}

.m99-vip summary {
  background:#99df68;
  border-color:#99df68;
  color:#152b18;
  box-shadow:0 3px 0 #4e783c;
}

.m99-vip summary:hover {
  background:#b4f18d;
}

.m99-vip .m99-vip-notice {
  border-left-color:#9bdd69;
}

@media(max-width:700px) {
  .m99-bonuses>.m99-decorated-heading,.m99-vip>.m99-decorated-heading {
    padding:20px 16px;
  }

}

/* START ACCOUNT SECURITY */
.m99-account {
  max-width:1600px;
  margin:64px auto;
  padding:40px;
  background:#172127;
  color:#edf5f5;
  border-top:3px solid #67dbd0;
  border-radius:0 0 22px 22px;
  font:16px/1.65 Arial,sans-serif;
  scroll-margin-top:110px
}

.m99-account * {
  box-sizing:border-box
}

.m99-account h2,.m99-account h3,.m99-account h4 {
  font-family:Arial,sans-serif;
  color:#f7fbfa;
  line-height:1.2;
  letter-spacing:-.02em
}

.m99-account p {
  margin:0 0 16px;
  color:#d2e0e2
}

.m99-account p:last-child {
  margin-bottom:0
}

.m99-account-head {
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);
  gap:40px;
  align-items:center;
  margin-bottom:34px
}

.m99-account h2 {
  font-size:clamp(34px,3.5vw,56px);
  margin:16px 0 22px
}

.m99-account h2 span {
  color:#a5e972
}

.m99-account .m99-account-kicker {
  color:#6fe1d7;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:14px
}

.m99-account-registration {
  padding:28px;
  border:1px solid #409a96;
  border-radius:18px;
  background:linear-gradient(130deg,#154641,#20383f)
}

.m99-account-label {
  display:inline-block;
  color:#102b29;
  background:#79e0d3;
  padding:4px 10px;
  border-radius:5px;
  font-size:13px;
  font-weight:700
}

.m99-account-registration h3 {
  font-size:27px;
  margin:20px 0 16px
}

.m99-account-registration strong {
  color:#c5ff9e
}

.m99-account-actions-heading {
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:16px;
  border-top:1px solid #3b545a;
  padding-top:28px;
  margin-bottom:20px
}

.m99-account-actions-heading h3 {
  font-size:26px;
  margin:0
}

.m99-account-actions-heading p {
  font-size:14px;
  color:#84d7d1;
  margin:0
}

.m99-account-actions {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px
}

.m99-account-actions article {
  background:#101a20;
  border:1px solid #36535a;
  border-radius:14px;
  padding:24px
}

.m99-account-icon {
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  background:#213f3d;
  color:#a5e972;
  border-radius:12px;
  margin-bottom:20px
}

.m99-account-icon svg {
  width:28px;
  height:28px
}

.m99-account-actions h4 {
  font-size:21px;
  margin:0 0 14px
}

.m99-account-more {
  margin-top:28px;
  display:grid;
  gap:12px
}

.m99-account details {
  border:1px solid #417478;
  border-radius:12px;
  overflow:hidden;
  background:#101a20
}

.m99-account summary {
  list-style:none;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  gap:20px;
  background:#25474b;
  color:#d5fff3;
  font-weight:700;
  padding:18px 22px
}

.m99-account summary::-webkit-details-marker {
  display:none
}

.m99-account summary::after {
  content:'+';
  color:#aff07e;
  font-size:22px;
  line-height:1;
  flex-shrink:0
}

.m99-account details[open]>summary::after {
  content:'−'
}

.m99-account summary:hover {
  background:#315b5d
}

.m99-account summary:focus-visible {
  outline:3px solid #b7f57f;
  outline-offset:-4px
}

.m99-account details>div {
  padding:22px;
  columns:2;
  column-gap:36px
}

.m99-account details p {
  break-inside:avoid
}

.m99-account .m99-account-note {
  margin-top:24px;
  font-size:14px;
  color:#a8c2c4
}

@media(max-width:1632px) {
  .m99-account {
    margin-left:16px;
    margin-right:16px
  }

}

@media(max-width:1100px) {
  .m99-account-actions {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }

  .m99-account-head {
    gap:24px
  }

}

@media(max-width:700px) {
  .m99-account {
    padding:26px 18px;
    margin-top:44px
  }

  .m99-account-head,.m99-account-actions {
    grid-template-columns:minmax(0,1fr)
  }

  .m99-account-registration {
    padding:22px
  }

  .m99-account-actions-heading {
    display:block
  }

  .m99-account-actions-heading p {
    margin-top:10px
  }

  .m99-account details>div {
    columns:1
  }

  .m99-account summary {
    padding:16px
  }

  .m99-account h2 {
    font-size:34px
  }

}

/* END ACCOUNT SECURITY */
/* START MOBILE CASINO */
.m99-mobile {
  max-width:1600px;
  margin:64px auto;
  padding:44px;
  background:linear-gradient(115deg,#1d302a,#171e25 58%);
  border-top:3px solid #a2df6b;
  border-radius:0 0 22px 22px;
  color:#edf5ef;
  font:16px/1.65 Arial,sans-serif;
  scroll-margin-top:110px
}

.m99-mobile * {
  box-sizing:border-box
}

.m99-mobile-layout {
  display:grid;
  grid-template-columns:minmax(280px,420px) minmax(0,1fr);
  gap:56px;
  align-items:start
}

.m99-mobile-visual {
  margin:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  background:radial-gradient(ellipse,#538e3535,transparent 68%);
  padding:10px 0
}

.m99-mobile-phone {
  width:100%;
  max-width:340px;
  border:9px solid #111619;
  border-radius:35px;
  padding:4px;
  background:#111619;
  box-shadow:0 0 0 2px #64746b,0 18px 35px #0006;
  overflow:hidden
}

.m99-mobile-phone img {
  display:block;
  width:100%;
  height:auto;
  border-radius:22px;
  object-fit:contain
}

.m99-mobile figcaption {
  text-align:center;
  color:#bbd1c4;
  font-size:13px;
  line-height:1.6;
  margin-top:22px
}

.m99-mobile .m99-mobile-kicker {
  color:#b0e67f;
  text-transform:uppercase;
  font-size:14px;
  font-weight:700;
  letter-spacing:.08em;
  margin:0 0 16px
}

.m99-mobile h2,.m99-mobile h3 {
  font-family:Arial,sans-serif;
  line-height:1.2;
  color:#f7fbf8;
  letter-spacing:-.02em
}

.m99-mobile h2 {
  font-size:clamp(34px,3.4vw,54px);
  margin:0 0 22px
}

.m99-mobile h2 span {
  color:#afe879
}

.m99-mobile p {
  color:#d3dfd9;
  margin:0 0 16px
}

.m99-mobile-features {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin:26px 0
}

.m99-mobile-features article {
  padding:20px;
  background:#101b21;
  border:1px solid #40564a;
  border-radius:14px
}

.m99-mobile-features span {
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#b8e98b;
  font-weight:700
}

.m99-mobile h3 {
  font-size:21px;
  margin:12px 0
}

.m99-mobile-features p {
  font-size:15px;
  margin-bottom:0
}

.m99-mobile details {
  background:#101b21;
  border:1px solid #659049;
  border-radius:12px;
  overflow:hidden
}

.m99-mobile summary {
  display:flex;
  justify-content:space-between;
  gap:20px;
  list-style:none;
  background:#a1df70;
  color:#132611;
  font-weight:700;
  padding:17px 20px;
  cursor:pointer
}

.m99-mobile summary::-webkit-details-marker {
  display:none
}

.m99-mobile summary::after {
  content:'+';
  font-size:23px;
  line-height:1
}

.m99-mobile details[open]>summary::after {
  content:'−'
}

.m99-mobile summary:hover {
  background:#b9ed8f
}

.m99-mobile summary:focus-visible {
  outline:3px solid #fff;
  outline-offset:-5px
}

.m99-mobile details>div {
  padding:24px
}

.m99-mobile details p:last-child {
  margin-bottom:0
}

@media(max-width:1632px) {
  .m99-mobile {
    margin-left:16px;
    margin-right:16px
  }

}

@media(max-width:1000px) {
  .m99-mobile-layout {
    grid-template-columns:280px minmax(0,1fr);
    gap:28px
  }

  .m99-mobile-features {
    grid-template-columns:1fr
  }

}

@media(max-width:700px) {
  .m99-mobile {
    padding:28px 20px;
    margin-top:44px
  }

  .m99-mobile-layout {
    grid-template-columns:minmax(0,1fr);
    gap:32px
  }

  .m99-mobile-phone {
    max-width:290px
  }

  .m99-mobile h2 {
    font-size:34px
  }

  .m99-mobile details>div {
    padding:18px
  }

}

/* END MOBILE CASINO */
/* Mobile instructions span the section below the phone and overview. */
.m99-mobile>details {
  margin-top:28px
}

.m99-mobile>details>div {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px
}

.m99-mobile>details article {
  min-width:0
}

.m99-mobile>details article h3 {
  margin-top:0
}

.m99-mobile>details article p {
  margin-bottom:0
}

@media(max-width:1100px) {
  .m99-mobile>details>div {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }

}

@media(max-width:700px) {
  .m99-mobile>details>div {
    grid-template-columns:minmax(0,1fr)
  }

}

/* START FAQ */
.m99-faq {
  max-width:1600px;
  margin:64px auto;
  padding:40px;
  background:#192229;
  border-top:3px solid #88dcca;
  border-radius:0 0 22px 22px;
  color:#eaf2ef;
  font:16px/1.65 Arial,sans-serif;
  scroll-margin-top:110px
}

.m99-faq * {
  box-sizing:border-box
}

.m99-faq h2,.m99-faq h3 {
  font-family:Arial,sans-serif;
  color:#f4faf7;
  line-height:1.2;
  letter-spacing:-.02em
}

.m99-faq .m99-faq-kicker {
  color:#b1e87c;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:14px;
  font-weight:700;
  margin:0 0 14px
}

.m99-faq h2 {
  font-size:clamp(32px,3.3vw,50px);
  margin:0 0 18px
}

.m99-faq header>p:last-child {
  color:#cbdcd5;
  margin:0 0 32px
}

.m99-faq-columns {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:start;
  gap:28px
}

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

.m99-faq h3 {
  font-size:23px;
  margin:0 0 18px
}

.m99-faq details {
  border:1px solid #41605b;
  border-radius:12px;
  background:#101c23;
  margin-bottom:12px;
  overflow:hidden
}

.m99-faq summary {
  padding:19px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:64px;
  list-style:none;
  font-weight:700;
  cursor:pointer;
  line-height:1.45;
  color:#e7f6ef
}

.m99-faq summary::-webkit-details-marker {
  display:none
}

.m99-faq summary::after {
  content:'+';
  color:#ade777;
  font-size:25px;
  line-height:1;
  flex-shrink:0
}

.m99-faq summary:hover {
  background:#263d3b
}

.m99-faq details[open] {
  border-color:#abe578
}

.m99-faq details[open]>summary {
  background:#abe578;
  color:#172d1c
}

.m99-faq details[open]>summary::after {
  content:'−';
  color:inherit
}

.m99-faq summary:focus-visible {
  outline:3px solid #fff;
  outline-offset:-5px
}

.m99-faq-answer {
  padding:20px;
  color:#d0e0d9
}

.m99-faq-answer p {
  margin:0;
  line-height:1.7
}

@media(max-width:1632px) {
  .m99-faq {
    margin-left:16px;
    margin-right:16px
  }

}

@media(max-width:700px) {
  .m99-faq {
    padding:28px 18px;
    margin-top:44px
  }

  .m99-faq-columns {
    grid-template-columns:minmax(0,1fr);
    gap:24px
  }

  .m99-faq summary {
    padding:17px 16px
  }

  .m99-faq-answer {
    padding:18px 16px
  }

}

/* END FAQ */
/* START M99 FOOTER */
.m99-footer {
  max-width: 1600px;
  margin: 56px auto 0;
  padding: 36px 40px 22px;
  border-top: 2px solid #81bb58;
  background: #101919;
  color: #d3e2d6;
  font: 16px/1.6 Arial, sans-serif;
}

.m99-footer * {
  box-sizing: border-box;
}

.m99-footer-main {
  display: grid;
  grid-template-columns: 200px minmax(0, 1fr);
  gap: 60px;
  align-items: start;
}

.m99-footer-logo {
  display: inline-block;
}

.m99-footer-logo img {
  display: block;
  width: 160px;
  height: auto;
}

.m99-footer nav {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
}

.m99-footer-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.m99-footer h2 {
  color: #b5e58b;
  font: 700 16px/1.4 Arial, sans-serif;
  margin: 0 0 10px;
}

.m99-footer a {
  color: #e1ece4;
  text-decoration: none;
}

.m99-footer-group a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 6px 0;
}

.m99-footer a:hover {
  color: #b5ee85;
  text-decoration: underline;
}

.m99-footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border-top: 1px solid #34453c;
  margin-top: 24px;
  padding-top: 20px;
}

.m99-footer-bottom p {
  margin: 0;
  font-size: 14px;
  color: #bccdc1;
}

.m99-footer button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  min-height: 44px;
  padding: 10px 16px;
  border: 1px solid #84b65f;
  border-radius: 9px;
  background: #223a2a;
  color: #c7f49f;
  font: 700 15px/1.4 Arial, sans-serif;
  cursor: pointer;
}

.m99-footer button:hover {
  background: #305038;
}

.m99-footer a:focus-visible, .m99-footer button:focus-visible {
  outline: 3px solid #b5ee85;
  outline-offset: 4px;
}

@media (max-width: 1632px) {
  .m99-footer {
    margin-left: 16px;
    margin-right: 16px;
  }

}

@media (max-width: 900px) {
  .m99-footer-main {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }

}

@media (max-width: 600px) {
  .m99-footer {
    padding: 28px 20px 22px;
  }

  .m99-footer nav {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
  }

  .m99-footer-bottom {
    align-items: flex-start;
    flex-direction: column;
    gap: 16px;
  }

}

/* END M99 FOOTER */
/* START LEGAL PAGES */
.m99-footer .m99-footer-policies {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 26px;
  margin-top: 24px;
  padding-top: 18px;
  border-top: 1px solid #34453c;
}

.m99-footer-policies a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-size: 14px;
}

.m99-legal {
  max-width: 1120px;
  margin: 48px auto;
  padding: 0 24px;
  color: #d6e4dc;
  font: 17px/1.75 Arial, sans-serif;
}

.m99-legal-heading {
  padding: 32px;
  background: linear-gradient(120deg, #234133, #17242a);
  border: 1px solid #53825b;
  border-top: 3px solid #a2de71;
  border-radius: 16px;
  margin-bottom: 24px;
}

.m99-legal-kicker {
  color: #b7ea89;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .04em;
}

.m99-legal h1 {
  font: 700 clamp(30px, 4vw, 52px)/1.15 Arial, sans-serif;
  color: #f5faf6;
  margin: 16px 0;
}

.m99-legal-heading p:last-child {
  margin: 0;
}

.m99-legal-body {
  padding: 12px 32px;
  background: #172127;
  border: 1px solid #344c41;
  border-radius: 16px;
}

.m99-legal-body section {
  padding: 24px 0;
}

.m99-legal-body section + section {
  border-top: 1px solid #344c41;
}

.m99-legal h2 {
  font: 700 24px/1.3 Arial, sans-serif;
  color: #c0ed97;
  margin: 0 0 14px;
}

.m99-legal-body p {
  margin: 0;
}

@media (max-width: 600px) {
  .m99-legal {
    padding: 0 16px;
    margin: 28px auto;
    font-size: 16px;
  }

  .m99-legal-heading, .m99-legal-body {
    padding-left: 20px;
    padding-right: 20px;
  }

  .m99-footer .m99-footer-policies {
    flex-direction: column;
    gap: 4px;
  }

}

/* END LEGAL PAGES */
