/* =====================================================
   28MARS CASINO — BASE
===================================================== */

:root {
  --bg-main: #050908;
  --text-main: #ffffff;
  --text-soft: #d7dee7;

  --green: #8ee85f;
  --green-dark: #66bf3e;

  --gold: #d8c86a;

  --border: rgba(255, 255, 255, 0.10);
  --border-green: rgba(142, 232, 95, 0.35);

  --container: 1280px;
  --games-container: 1400px;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;

  font-family: Arial, Helvetica, sans-serif;

  color: var(--text-main);
  background: var(--bg-main);
}

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

img {
  display: block;
  max-width: 100%;
}


/* =====================================================
   START HEADER
===================================================== */

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;

  width: 100%;

  background: rgba(5, 9, 8, 0.97);

  border-bottom: 1px solid var(--border-green);

  backdrop-filter: blur(12px);
}

.site-header__inner {
  width: 100%;
  max-width: var(--container);
  min-height: 92px;

  margin: 0 auto;
  padding: 0 24px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 32px;
}


/* =====================================================
   START LOGO
===================================================== */

.site-logo {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;

  min-width: 150px;

  line-height: 1;
}

.site-logo__main {
  font-family: Georgia, "Times New Roman", serif;

  font-size: 46px;
  font-weight: 700;

  letter-spacing: -3px;

  color: var(--green);
}

.site-logo__number {
  color: var(--text-main);
}

.site-logo__sub {
  margin-top: 5px;
  padding-left: 6px;

  font-size: 11px;
  font-weight: 700;

  letter-spacing: 9px;

  color: var(--gold);
}

/* =====================================================
   END LOGO
===================================================== */


/* =====================================================
   START NAVIGATION
===================================================== */

.site-nav {
  display: flex;
  align-items: center;
  justify-content: center;

  flex: 1;

  gap: 22px;
}

.site-nav a {
  color: var(--text-main);

  font-size: 15px;
  font-weight: 700;

  transition: color 0.2s ease;
}

.site-nav a:hover {
  color: var(--green);
}

/* =====================================================
   END NAVIGATION
===================================================== */


/* =====================================================
   START HEADER BUTTON
===================================================== */

.site-header__action {
  display: flex;
  align-items: center;
  justify-content: flex-end;

  min-width: 150px;
}

.site-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  border: 0;

  font-weight: 800;
  line-height: 1;

  cursor: pointer;

  transition:
    background 0.2s ease,
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.site-btn--header {
  min-height: 48px;

  padding: 0 26px;

  color: #061006;
  background: var(--green);

  border-radius: 999px;

  box-shadow: 0 0 0 1px rgba(142, 232, 95, 0.4);
}

.site-btn--header:hover {
  background: #9af06b;

  transform: translateY(-1px);

  box-shadow: 0 10px 28px rgba(142, 232, 95, 0.25);
}

/* =====================================================
   END HEADER BUTTON
===================================================== */


/* =====================================================
   END HEADER
===================================================== */


/* =====================================================
   START HERO
===================================================== */

.mars-hero {
  position: relative;

  width: 100%;

  min-height: calc(100vh - 92px);
  min-height: calc(100svh - 92px);

  display: flex;
  align-items: center;

  overflow: hidden;

  background:
    linear-gradient(
      90deg,
      rgba(3, 8, 6, 0.94) 0%,
      rgba(3, 8, 6, 0.85) 28%,
      rgba(3, 8, 6, 0.55) 48%,
      rgba(3, 8, 6, 0.16) 68%,
      rgba(3, 8, 6, 0.02) 100%
    ),
    url("../img/hero/hero-bg.png") center right / cover no-repeat;

  border-bottom: 1px solid rgba(142, 232, 95, 0.12);
}

.mars-hero-inner {
  position: relative;
  z-index: 2;

  width: 100%;
  max-width: var(--container);

  margin: 0 auto;
  padding: 80px 24px;
}

.mars-hero-copy {
  width: 100%;
  max-width: 610px;
}

.mars-hero-brand {
  margin: 0 0 18px;

  color: var(--gold);

  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;

  letter-spacing: 5px;
  text-transform: uppercase;
}

.mars-hero h1 {
  margin: 0;

  color: #ffffff;

  font-size: clamp(50px, 5.3vw, 78px);
  font-weight: 800;
  line-height: 0.98;

  letter-spacing: -2px;
}

.mars-hero h1 span {
  color: var(--green);
}

.mars-hero-intro {
  width: 100%;
  max-width: 580px;

  margin: 28px 0 0;

  color: rgba(255, 255, 255, 0.82);

  font-size: 18px;
  line-height: 1.7;
}

.mars-hero-action {
  margin-top: 32px;
}

.mars-hero .theme-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-width: 170px;
  min-height: 54px;

  padding: 14px 30px;

  color: #071006;
  background: var(--green);

  border: 1px solid var(--green);
  border-radius: 6px;

  font-size: 15px;
  font-weight: 800;
  line-height: 1;

  letter-spacing: 0.8px;
  text-transform: uppercase;

  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    transform 0.2s ease;
}

.mars-hero .theme-btn:hover {
  background: #ffffff;
  border-color: #ffffff;

  transform: translateY(-2px);
}

.mars-hero .theme-btn i,
.mars-hero .theme-btn::before,
.mars-hero .theme-btn::after {
  display: none !important;
}

/* =====================================================
   END HERO
===================================================== */


/* =====================================================
   START GAME CATALOGUE
===================================================== */

.gm-library {
  position: relative;

  width: 100%;

  padding: 54px 18px 90px;

  color: #ffffff;
  background: #050807;
}

.gm-library::before {
  content: "";

  position: absolute;
  inset: 0;

  pointer-events: none;

  background:
    radial-gradient(
      circle at 8% 8%,
      rgba(142, 232, 95, 0.055),
      transparent 28%
    ),
    radial-gradient(
      circle at 92% 30%,
      rgba(216, 200, 106, 0.035),
      transparent 28%
    );
}

.gm-library > * {
  position: relative;
  z-index: 1;
}


/* =====================================================
   START GAME CATALOGUE HEADER
===================================================== */

.gm-heading {
  width: 100%;
  max-width: var(--games-container);

  margin: 0 auto 24px;
}

.gm-eyebrow {
  margin: 0 0 8px;

  color: var(--gold);

  font-size: 13px;
  font-weight: 800;

  letter-spacing: 4px;
  text-transform: uppercase;
}

.gm-heading h2 {
  margin: 0 0 16px;

  color: #ffffff;

  font-size: clamp(40px, 4vw, 58px);
  font-weight: 800;
  line-height: 1.04;

  letter-spacing: -1.5px;
}

.gm-heading .gm-lead,
.gm-heading > p:not(.gm-eyebrow) {
  width: 100%;
  max-width: 1300px;

  margin: 0 0 8px;

  color: rgba(255, 255, 255, 0.79);

  font-size: 17px;
  line-height: 1.62;
}

/* =====================================================
   END GAME CATALOGUE HEADER
===================================================== */


/* =====================================================
   START GAME SWITCHERS
===================================================== */

.gm-switcher {
  width: 100%;
  max-width: var(--games-container);

  margin-left: auto;
  margin-right: auto;

  padding: 0;

  border: 0;
}

.gm-main-switcher {
  display: flex;
  flex-wrap: wrap;

  gap: 12px;

  margin-top: 22px;
  margin-bottom: 30px;
}

.gm-category-switcher {
  display: flex;
  flex-wrap: wrap;

  gap: 12px;

  margin-top: 22px;
  margin-bottom: 20px;
}

.gm-choice {
  position: absolute;

  width: 1px;
  height: 1px;

  margin: -1px;

  overflow: hidden;

  opacity: 0;

  pointer-events: none;
}

.gm-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 52px;

  padding: 14px 26px;

  color: rgba(255, 255, 255, 0.80);
  background: #0b100e;

  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 7px;

  font-size: 15px;
  font-weight: 800;
  line-height: 1;

  cursor: pointer;

  transition:
    color 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.gm-main-switcher .gm-tab {
  min-height: 54px;

  padding: 15px 30px;

  font-size: 15px;
}

.gm-category-switcher .gm-tab {
  min-height: 50px;

  padding: 13px 25px;

  font-size: 15px;
}

.gm-tab:hover {
  color: #ffffff;

  border-color: rgba(142, 232, 95, 0.50);

  box-shadow: 0 0 0 1px rgba(142, 232, 95, 0.06);
}

.gm-choice:checked + .gm-tab {
  color: #061006;
  background: var(--green);

  border-color: var(--green);

  box-shadow:
    0 0 0 1px rgba(142, 232, 95, 0.25),
    0 8px 20px rgba(142, 232, 95, 0.10);
}

.gm-choice:focus-visible + .gm-tab {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
}

/* =====================================================
   END GAME SWITCHERS
===================================================== */


/* =====================================================
   START POKIES SECTION
===================================================== */

.gm-section {
  width: 100%;
  max-width: var(--games-container);

  margin: 0 auto;
}

.gm-section-head {
  width: 100%;
  max-width: 1300px;
}

.gm-section-head h3,
.gm-section > h3 {
  margin: 0 0 15px;

  color: #ffffff;

  font-size: clamp(34px, 3vw, 46px);
  font-weight: 800;
  line-height: 1.08;

  letter-spacing: -1px;
}

.gm-panel-intro {
  width: 100%;
  max-width: 1300px;

  margin: 0 0 11px;

  color: rgba(255, 255, 255, 0.77);

  font-size: 16.5px;
  line-height: 1.62;
}

/* =====================================================
   END POKIES SECTION
===================================================== */


/* =====================================================
   START MORE ABOUT POKIES
===================================================== */

.gm-info {
  width: 100%;
  max-width: 1300px;

  margin: 0 0 26px;

  overflow: hidden;

  background: rgba(142, 232, 95, 0.03);

  border: 1px solid rgba(142, 232, 95, 0.18);
  border-radius: 8px;
}

.gm-info summary {
  position: relative;

  padding: 15px 50px 15px 18px;

  color: var(--green);

  font-size: 14px;
  font-weight: 800;

  cursor: pointer;

  list-style: none;
}

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

.gm-info summary::marker {
  display: none;
}

.gm-info summary::after {
  content: "+";

  position: absolute;

  right: 18px;
  top: 50%;

  transform: translateY(-50%);

  color: var(--green);

  font-size: 22px;
  line-height: 1;
}

.gm-info[open] summary::after {
  content: "−";
}

.gm-info-content {
  padding: 0 18px 18px;

  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.gm-info-content p {
  max-width: 1240px;

  margin: 13px 0 0;

  color: rgba(255, 255, 255, 0.74);

  font-size: 15.5px;
  line-height: 1.65;
}

/* =====================================================
   END MORE ABOUT POKIES
===================================================== */


/* =====================================================
   START POKIES CATEGORY PANEL
===================================================== */

.gm-panel {
  width: 100%;

  margin-top: 0;
}

.gm-category-head {
  width: 100%;
  max-width: 1300px;

  margin-bottom: 20px;
}

.gm-category-head h4,
.gm-panel > h4 {
  position: relative;

  margin: 0 0 12px;
  padding-left: 17px;

  color: #ffffff;

  font-size: clamp(28px, 2.5vw, 38px);
  font-weight: 800;
  line-height: 1.12;

  letter-spacing: -0.6px;
}

.gm-category-head h4::before,
.gm-panel > h4::before {
  content: "";

  position: absolute;

  left: 0;
  top: 0.08em;

  width: 4px;
  height: 1.08em;

  background: var(--green);

  border-radius: 4px;
}

.gm-category-intro {
  width: 100%;
  max-width: 1300px;

  margin: 0 0 9px;

  color: rgba(255, 255, 255, 0.77);

  font-size: 16.5px;
  line-height: 1.62;
}

/* =====================================================
   END POKIES CATEGORY PANEL
===================================================== */


/* =====================================================
   START GAME GRID
===================================================== */

.gm-grid {
  position: relative;
  width: 100%;

  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));

  gap: 14px;

  margin-top: 18px;
}

.gm-grid:has(.gm-game details[open]) {
  padding-bottom: 250px;
}

.gm-game {
  min-width: 0;
}

.gm-game details {
  height: 100%;

  overflow: visible;

  background: #0b100e;

  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 9px;

  transform: none;

  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.gm-game details:hover {
  border-color: rgba(142, 232, 95, 0.38);

  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.28);
}

.gm-game details[open] {
  border-color: rgba(142, 232, 95, 0.58);

  box-shadow:
    0 0 0 1px rgba(142, 232, 95, 0.04),
    0 12px 28px rgba(0, 0, 0, 0.22);
}

/* =====================================================
   END GAME GRID
===================================================== */


/* =====================================================
   START GAME CARD
===================================================== */

.gm-game summary {
  position: relative;

  display: block;

  height: 100%;

  overflow: hidden;

  list-style: none;

  cursor: pointer;

  border-radius: 8px;
}

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

.gm-game summary::marker {
  display: none;
}

.gm-game summary img {
  display: block;

  width: 100%;

  aspect-ratio: 16 / 10;

  object-fit: cover;

  background: #111714;
}

.gm-card-copy {
  position: relative;

  display: block;

  min-height: 80px;

  padding: 14px 34px 14px 14px;
}

.gm-name {
  display: block;

  color: #ffffff;

  font-size: 14px;
  font-weight: 800;
  line-height: 1.32;
}

.gm-hint {
  display: block;

  margin-top: 5px;

  color: var(--green);

  font-size: 12px;
  font-weight: 700;
}

.gm-card-copy::after {
  content: "+";

  position: absolute;

  top: 50%;
  right: 12px;

  transform: translateY(-50%);

  color: var(--green);

  font-size: 20px;
  line-height: 1;
}

.gm-game details[open] .gm-card-copy::after {
  content: "−";
}

/* =====================================================
   END GAME CARD
===================================================== */


/* =====================================================
   START OPEN GAME DESCRIPTION
===================================================== */

.gm-description {
  display: none;
}

.gm-game details[open] > .gm-description {
  position: absolute;

  left: 0;
  right: 0;

  top: calc(100% - 250px);

  display: block;

  min-height: 230px;

  padding: 22px 24px;

  background: #0a0f0d;

  border: 1px solid rgba(142, 232, 95, 0.44);
  border-radius: 9px;

  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.28);

  z-index: 10;
}

.gm-description dl {
  display: grid;

  grid-template-columns:
    minmax(150px, 0.75fr)
    minmax(0, 1.15fr)
    minmax(0, 1.15fr)
    minmax(0, 1.15fr);

  gap: 0;

  margin: 0;
}

.gm-rule {
  min-width: 0;

  padding: 0 20px;

  border-right: 1px solid rgba(255, 255, 255, 0.08);
}

.gm-rule:first-child {
  padding-left: 0;
}

.gm-rule:last-child {
  padding-right: 0;

  border-right: 0;
}

.gm-rule dt {
  margin: 0 0 9px;

  color: var(--gold);

  font-size: 11px;
  font-weight: 800;

  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.gm-rule dd {
  margin: 0;

  color: rgba(255, 255, 255, 0.78);

  font-size: 13px;
  line-height: 1.58;
}

/* =====================================================
   END OPEN GAME DESCRIPTION
===================================================== */


/* =====================================================
   START RESPONSIVE — HEADER / HERO
===================================================== */

@media (max-width: 991px) {

  .site-header__inner {
    flex-wrap: wrap;

    min-height: auto;

    padding: 16px 20px;

    gap: 16px;
  }

  .site-logo {
    min-width: auto;
  }

  .site-nav {
    order: 3;

    width: 100%;

    flex-wrap: wrap;
    justify-content: flex-start;

    gap: 12px 18px;
  }

  .site-header__action {
    min-width: auto;
  }

  .mars-hero {
    min-height: calc(100svh - 92px);

    background:
      linear-gradient(
        90deg,
        rgba(3, 8, 6, 0.95) 0%,
        rgba(3, 8, 6, 0.86) 40%,
        rgba(3, 8, 6, 0.48) 67%,
        rgba(3, 8, 6, 0.10) 100%
      ),
      url("../img/hero/hero-bg.png") 65% center / cover no-repeat;
  }

  .mars-hero-inner {
    padding: 70px 24px;
  }
}


@media (max-width: 767px) {

  .mars-hero {
    min-height: calc(100svh - 92px);

    align-items: flex-end;

    background:
      linear-gradient(
        180deg,
        rgba(3, 8, 6, 0.14) 0%,
        rgba(3, 8, 6, 0.48) 42%,
        rgba(3, 8, 6, 0.90) 70%,
        #030806 100%
      ),
      url("../img/hero/hero-bg.png") 72% center / cover no-repeat;
  }

  .mars-hero-inner {
    padding: 180px 20px 55px;
  }

  .mars-hero-brand {
    font-size: 13px;
    letter-spacing: 3px;
  }

  .mars-hero h1 {
    font-size: clamp(40px, 11vw, 58px);
    line-height: 1;
  }

  .mars-hero-intro {
    font-size: 16px;
  }
}


@media (max-width: 560px) {

  .site-header__inner {
    align-items: flex-start;
  }

  .site-logo__main {
    font-size: 38px;
  }

  .site-logo__sub {
    font-size: 9px;
    letter-spacing: 7px;
  }

  .site-nav a {
    font-size: 14px;
  }

  .site-btn--header {
    min-height: 42px;

    padding: 0 18px;

    font-size: 14px;
  }
}

/* =====================================================
   END RESPONSIVE — HEADER / HERO
===================================================== */


/* =====================================================
   START RESPONSIVE — GAME CATALOGUE
===================================================== */

@media (max-width: 1250px) {

  .gm-library {
    padding-left: 20px;
    padding-right: 20px;
  }

  .gm-heading .gm-lead,
  .gm-heading > p:not(.gm-eyebrow),
  .gm-section-head,
  .gm-panel-intro,
  .gm-category-head,
  .gm-category-intro,
  .gm-info {
    max-width: 100%;
  }

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

  .gm-grid:has(.gm-game details[open]) {
    padding-bottom: 350px;
  }

  .gm-game details[open] > .gm-description {
    top: calc(100% - 350px);

    min-height: 330px;
  }

  .gm-description dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));

    row-gap: 24px;
  }

  .gm-rule:nth-child(2) {
    border-right: 0;
  }

  .gm-rule:nth-child(3) {
    padding-left: 0;
  }
}


@media (max-width: 900px) {

  .gm-library {
    padding: 44px 18px 75px;
  }

  .gm-heading h2 {
    font-size: 40px;
  }

  .gm-main-switcher,
  .gm-category-switcher {
    gap: 9px;
  }

  .gm-tab,
  .gm-main-switcher .gm-tab,
  .gm-category-switcher .gm-tab {
    min-height: 48px;

    padding: 13px 20px;

    font-size: 14px;
  }

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


@media (max-width: 650px) {

  .gm-library {
    padding: 38px 14px 65px;
  }

  .gm-heading {
    margin-bottom: 18px;
  }

  .gm-heading h2 {
    font-size: 34px;
  }

  .gm-heading .gm-lead,
  .gm-heading > p:not(.gm-eyebrow),
  .gm-panel-intro,
  .gm-category-intro {
    font-size: 15px;
    line-height: 1.6;
  }

  .gm-main-switcher,
  .gm-category-switcher {
    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 8px;
  }

  .gm-main-switcher {
    margin-top: 18px;
    margin-bottom: 24px;
  }

  .gm-category-switcher {
    margin-top: 18px;
    margin-bottom: 18px;
  }

  .gm-tab,
  .gm-main-switcher .gm-tab,
  .gm-category-switcher .gm-tab {
    width: 100%;

    min-height: 50px;

    padding: 12px 14px;

    font-size: 14px;
    line-height: 1.2;
  }

  .gm-section-head h3,
  .gm-section > h3 {
    font-size: 30px;
  }

  .gm-category-head h4,
  .gm-panel > h4 {
    font-size: 26px;
  }

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

  .gm-grid:has(.gm-game details[open]) {
    padding-bottom: 620px;
  }

  .gm-game details[open] > .gm-description {
    top: calc(100% - 620px);

    min-height: 600px;

    padding: 18px;
  }

  .gm-description dl {
    grid-template-columns: 1fr;
  }

  .gm-rule,
  .gm-rule:first-child,
  .gm-rule:nth-child(3),
  .gm-rule:last-child {
    padding: 13px 0;

    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07);
  }

  .gm-rule:first-child {
    padding-top: 0;
  }

  .gm-rule:last-child {
    border-bottom: 0;
  }
}

/* =====================================================
   END RESPONSIVE — GAME CATALOGUE
===================================================== */


/* =====================================================
   END 28MARS CASINO STYLES
===================================================== */

/* =====================================================
START LIVE CASINO
===================================================== */

#live-casino-panel {
width: 100%;
max-width: var(--container);
margin: 0 auto;
}

/* =====================================================
LIVE CASINO INTRO
===================================================== */

#live-casino-panel > .gm-section-head {
width: 100%;
max-width: 1180px;
margin-bottom: 24px;
}

#live-casino-panel > .gm-section-head h3 {
margin: 0 0 18px;

color: #ffffff;

font-size: clamp(34px, 3.2vw, 46px);
font-weight: 800;
line-height: 1.08;

letter-spacing: -1px;
}

#live-casino-panel > .gm-section-head .gm-panel-intro {
width: 100%;
max-width: 1160px;

margin: 0 0 12px;

color: rgba(255, 255, 255, 0.78);

font-size: 16px;
line-height: 1.68;
}

/* =====================================================
LIVE CASINO CATEGORY SWITCHER
===================================================== */

#live-casino-panel > .gm-category-switcher {
width: 100%;
max-width: 1180px;

display: flex;
flex-wrap: wrap;

gap: 12px;

margin: 24px 0 34px;
}

#live-casino-panel > .gm-category-switcher .gm-tab {
min-width: 150px;
min-height: 48px;

padding: 13px 24px;

font-size: 14px;
font-weight: 800;
}

/* =====================================================
LIVE CASINO PANEL VISIBILITY
===================================================== */

#live-casino-panel .gm-panel {
display: none;
}

#live-casino-panel:has(#live-roulette-choice:checked)
#live-roulette-panel {
display: block !important;
}

#live-casino-panel:has(#live-blackjack-choice:checked)
#live-blackjack-panel {
display: block !important;
}

#live-casino-panel:has(#live-baccarat-choice:checked)
#live-baccarat-panel {
display: block !important;
}

#live-casino-panel:has(#live-shows-choice:checked)
#live-shows-panel {
display: block !important;
}

/* =====================================================
LIVE CATEGORY HEAD
===================================================== */

#live-casino-panel .gm-category-head {
width: 100%;
max-width: 1180px;

margin: 0 0 24px;
}

#live-casino-panel .gm-category-head h4 {
position: relative;

margin: 0 0 14px;
padding-left: 16px;

color: #ffffff;

font-size: clamp(28px, 2.5vw, 36px);
font-weight: 800;
line-height: 1.16;

letter-spacing: -0.5px;
}

#live-casino-panel .gm-category-head h4::before {
content: "";

position: absolute;

left: 0;
top: 0.12em;

width: 4px;
height: 1.08em;

background: var(--green);

border-radius: 4px;
}

#live-casino-panel .gm-category-intro {
width: 100%;
max-width: 1160px;

margin: 0 0 11px;

color: rgba(255, 255, 255, 0.76);

font-size: 16px;
line-height: 1.68;
}

/* =====================================================
LIVE GAME GRID
===================================================== */

#live-casino-panel .gm-grid {
position: relative;

width: 100%;

display: grid;
grid-template-columns: repeat(6, minmax(0, 1fr));

gap: 14px;

margin-top: 22px;
}

/*
Reserve space under the row only when
one live game description is open.
*/

#live-casino-panel .gm-grid:has(.gm-game details[open]) {
padding-bottom: 250px;
}

#live-casino-panel .gm-game {
min-width: 0;
}

/* =====================================================
LIVE GAME CARD
===================================================== */

#live-casino-panel .gm-game details {
height: 100%;

overflow: visible;

background: #0b100e;

border: 1px solid rgba(255, 255, 255, 0.10);
border-radius: 9px;

transition:
border-color 0.2s ease,
box-shadow 0.2s ease;
}

#live-casino-panel .gm-game details:hover {
border-color: rgba(142, 232, 95, 0.40);

box-shadow: 0 12px 28px rgba(0, 0, 0, 0.28);
}

#live-casino-panel .gm-game details[open] {
border-color: rgba(142, 232, 95, 0.58);
}

#live-casino-panel .gm-game summary {
position: relative;

display: block;

height: 100%;

overflow: hidden;

list-style: none;
cursor: pointer;

border-radius: 8px;
}

#live-casino-panel .gm-game summary::-webkit-details-marker {
display: none;
}

#live-casino-panel .gm-game summary::marker {
display: none;
}

#live-casino-panel .gm-game summary img {
display: block;

width: 100%;
height: auto;

aspect-ratio: 16 / 10;

object-fit: cover;

background: #111714;
}

#live-casino-panel .gm-card-copy {
position: relative;

display: block;

min-height: 82px;

padding: 14px 34px 14px 14px;
}

#live-casino-panel .gm-name {
display: block;

color: #ffffff;

font-size: 14px;
font-weight: 800;
line-height: 1.32;
}

#live-casino-panel .gm-hint {
display: block;

margin-top: 5px;

color: var(--green);

font-size: 12px;
font-weight: 700;
}

#live-casino-panel .gm-card-copy::after {
content: "+";

position: absolute;

top: 50%;
right: 12px;

transform: translateY(-50%);

color: var(--green);

font-size: 20px;
line-height: 1;
}

#live-casino-panel .gm-game details[open] .gm-card-copy::after {
content: "−";
}

/* =====================================================
LIVE OPEN DESCRIPTION
===================================================== */

#live-casino-panel .gm-description {
display: none;
}

#live-casino-panel .gm-game details[open] > .gm-description {
position: absolute;

left: 0;
right: 0;

top: calc(100% - 250px);

display: block;

min-height: 230px;

padding: 20px 22px;

background: #0a0f0d;

border: 1px solid rgba(142, 232, 95, 0.44);
border-radius: 9px;

box-shadow: 0 14px 36px rgba(0, 0, 0, 0.30);

z-index: 20;
}

#live-casino-panel .gm-description dl {
display: grid;

grid-template-columns:
minmax(160px, 0.82fr)
minmax(0, 1.06fr)
minmax(0, 1.06fr)
minmax(0, 1.06fr);

gap: 0;

margin: 0;
}

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

padding: 0 18px;

border-right: 1px solid rgba(255, 255, 255, 0.08);
}

#live-casino-panel .gm-rule:first-child {
padding-left: 0;
}

#live-casino-panel .gm-rule:last-child {
padding-right: 0;

border-right: 0;
}

#live-casino-panel .gm-rule dt {
margin: 0 0 8px;

color: var(--gold);

font-size: 11px;
font-weight: 800;

letter-spacing: 0.5px;
text-transform: uppercase;
}

#live-casino-panel .gm-rule dd {
margin: 0;

color: rgba(255, 255, 255, 0.77);

font-size: 13px;
line-height: 1.58;
}

/* =====================================================
LIVE CASINO — LAPTOP
===================================================== */

@media (max-width: 1200px) {

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

#live-casino-panel .gm-grid:has(.gm-game details[open]) {
padding-bottom: 330px;
}

#live-casino-panel .gm-game details[open] > .gm-description {
top: calc(100% - 330px);

min-height: 310px;
}

#live-casino-panel .gm-description dl {
grid-template-columns: repeat(2, minmax(0, 1fr));

row-gap: 22px;
}

#live-casino-panel .gm-rule:nth-child(2) {
border-right: 0;
}

#live-casino-panel .gm-rule:nth-child(3) {
padding-left: 0;
}
}

/* =====================================================
LIVE CASINO — TABLET
===================================================== */

@media (max-width: 900px) {

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

#live-casino-panel > .gm-category-switcher .gm-tab {
min-width: 130px;
}

#live-casino-panel .gm-category-head,
#live-casino-panel > .gm-section-head {
max-width: 100%;
}
}

/* =====================================================
LIVE CASINO — MOBILE
===================================================== */

@media (max-width: 650px) {

#live-casino-panel > .gm-category-switcher {
display: grid;

grid-template-columns: repeat(2, minmax(0, 1fr));

gap: 8px;
}

#live-casino-panel > .gm-category-switcher .gm-tab {
width: 100%;
min-width: 0;

justify-content: center;
}

#live-casino-panel .gm-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));

gap: 12px;
}

#live-casino-panel .gm-grid:has(.gm-game details[open]) {
padding-bottom: 610px;
}

#live-casino-panel .gm-game details[open] > .gm-description {
top: calc(100% - 610px);

min-height: 590px;
}

#live-casino-panel .gm-description dl {
grid-template-columns: 1fr;
}

#live-casino-panel .gm-rule,
#live-casino-panel .gm-rule:first-child,
#live-casino-panel .gm-rule:nth-child(3),
#live-casino-panel .gm-rule:last-child {
padding: 13px 0;

border-right: 0;
border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}

#live-casino-panel .gm-rule:first-child {
padding-top: 0;
}

#live-casino-panel .gm-rule:last-child {
border-bottom: 0;
}

#live-casino-panel > .gm-section-head h3 {
font-size: 32px;
}

#live-casino-panel .gm-category-head h4 {
font-size: 27px;
}

}

/* =====================================================
END LIVE CASINO
===================================================== */

/* =====================================================
START LIVE CASINO + GAMES FINAL LAYOUT
28MARS CASINO
===================================================== */


/* =====================================================
START LIVE CASINO CATEGORY VISIBILITY — FIXED
===================================================== */



#live-casino-panel .gm-panel:not([hidden]) {
display: block;
}

/* =====================================================
END LIVE CASINO CATEGORY VISIBILITY — FIXED
===================================================== */


/* =====================================================
START LIVE CASINO TEXT
===================================================== */

#live-casino-panel {
width: 100%;
max-width: var(--container);
margin: 0 auto;
}

#live-casino-panel > h3,
#games-panel > h3 {
width: 100%;
max-width: 100%;

margin: 0 0 18px;

font-size: clamp(34px, 3vw, 46px);
font-weight: 800;
line-height: 1.1;

color: #ffffff;
letter-spacing: -1px;
}

#live-casino-panel > .gm-panel-intro,
#games-panel > .gm-panel-intro {
width: 100%;
max-width: 1180px;

margin: 0 0 13px;

font-size: 16px;
line-height: 1.68;

color: rgba(255, 255, 255, 0.78);
}

#live-casino-panel .gm-category-head,
#games-panel .gm-category-head {
width: 100%;
max-width: 1180px;

margin: 0 0 24px;
}

#live-casino-panel .gm-category-head h4,
#games-panel .gm-category-head h4,
#live-casino-panel > .gm-panel > h4,
#games-panel > .gm-panel > h4 {
position: relative;

width: 100%;
max-width: 1180px;

margin: 0 0 14px;
padding-left: 16px;

font-size: clamp(27px, 2.5vw, 36px);
font-weight: 800;
line-height: 1.18;

color: #ffffff;
letter-spacing: -0.5px;
}

#live-casino-panel .gm-category-head h4::before,
#games-panel .gm-category-head h4::before,
#live-casino-panel > .gm-panel > h4::before,
#games-panel > .gm-panel > h4::before {
content: "";

position: absolute;

left: 0;
top: 0.12em;

width: 4px;
height: 1.08em;

background: var(--green);
border-radius: 4px;
}

#live-casino-panel .gm-category-intro,
#games-panel .gm-category-intro,
#live-casino-panel .gm-panel > .gm-panel-intro,
#games-panel .gm-panel > .gm-panel-intro {
width: 100%;
max-width: 1180px;

margin: 0 0 12px;

font-size: 16px;
line-height: 1.68;

color: rgba(255, 255, 255, 0.76);
}

/* =====================================================
END LIVE CASINO TEXT
===================================================== */


/* =====================================================
START LIVE CASINO CATEGORY BUTTONS
===================================================== */

#live-casino-panel > .gm-category-switcher,
#games-panel > .gm-category-switcher {
width: 100%;
max-width: 1180px;

display: flex;
flex-wrap: wrap;

gap: 12px;

margin: 24px 0 32px;
}

#live-casino-panel > .gm-category-switcher .gm-tab,
#games-panel > .gm-category-switcher .gm-tab {
min-width: 165px;
min-height: 50px;

padding: 14px 26px;

font-size: 15px;
font-weight: 800;

justify-content: center;

border-radius: 7px;
}

/* =====================================================
END LIVE CASINO CATEGORY BUTTONS
===================================================== */


/* =====================================================
   START GAMES PANEL VISIBILITY
===================================================== */

#games-panel > .gm-panel[hidden] {
  display: none !important;
}

#games-panel > .gm-panel:not([hidden]) {
  display: block;
}

/* =====================================================
   END GAMES PANEL VISIBILITY
===================================================== */

/* =====================================================
START LIVE + GAMES GRID
6 CARDS IN ONE ROW
===================================================== */

#live-casino-panel .gm-grid,
#games-panel .gm-grid {
position: relative;

width: 100%;

display: grid;
grid-template-columns: repeat(6, minmax(0, 1fr));

gap: 14px;

margin-top: 22px;

align-items: start;
}



#live-casino-panel .gm-grid:has(.gm-game details[open]),
#games-panel .gm-grid:has(.gm-game details[open]) {
padding-bottom: 270px;
}

#live-casino-panel .gm-game,
#games-panel .gm-game {
position: static;
min-width: 0;
}

/* =====================================================
END LIVE + GAMES GRID
===================================================== */


/* =====================================================
START LIVE + GAMES CARD
===================================================== */

#live-casino-panel .gm-game details,
#games-panel .gm-game details {
position: static;

width: 100%;
height: 100%;

overflow: visible;

background: #0b100e;

border: 1px solid rgba(255, 255, 255, 0.10);
border-radius: 9px;

transform: none !important;

transition:
border-color 0.2s ease,
box-shadow 0.2s ease;
}

#live-casino-panel .gm-game details:hover,
#games-panel .gm-game details:hover {
transform: none !important;

border-color: rgba(142, 232, 95, 0.38);

box-shadow:
0 12px 28px rgba(0, 0, 0, 0.28);
}

#live-casino-panel .gm-game details[open],
#games-panel .gm-game details[open] {
border-color: rgba(142, 232, 95, 0.58);
}

#live-casino-panel .gm-game summary,
#games-panel .gm-game summary {
position: relative;

display: block;

height: 100%;

overflow: hidden;

list-style: none;
cursor: pointer;

border-radius: 8px;
}

#live-casino-panel .gm-game summary::-webkit-details-marker,
#games-panel .gm-game summary::-webkit-details-marker {
display: none;
}

#live-casino-panel .gm-game summary::marker,
#games-panel .gm-game summary::marker {
display: none;
}

#live-casino-panel .gm-game summary img,
#games-panel .gm-game summary img {
display: block;

width: 100%;
height: auto;

aspect-ratio: 16 / 10;

object-fit: cover;

background: #111714;

transform: none !important;
}

#live-casino-panel .gm-card-copy,
#games-panel .gm-card-copy {
position: relative;

display: block;

min-height: 82px;

padding: 14px 34px 14px 14px;
}

#live-casino-panel .gm-name,
#games-panel .gm-name {
display: block;

font-size: 14px;
font-weight: 800;
line-height: 1.32;

color: #ffffff;
}

#live-casino-panel .gm-hint,
#games-panel .gm-hint {
display: block;

margin-top: 5px;

font-size: 12px;
font-weight: 700;

color: var(--green);
}

#live-casino-panel .gm-card-copy::after,
#games-panel .gm-card-copy::after {
content: "+";

position: absolute;

top: 50%;
right: 12px;

transform: translateY(-50%);

font-size: 20px;
font-weight: 400;
line-height: 1;

color: var(--green);
}

#live-casino-panel .gm-game details[open] .gm-card-copy::after,
#games-panel .gm-game details[open] .gm-card-copy::after {
content: "−";
}

/* =====================================================
END LIVE + GAMES CARD
===================================================== */


/* =====================================================
START LIVE + GAMES OPEN DESCRIPTION
===================================================== */

#live-casino-panel .gm-description,
#games-panel .gm-description {
display: none;
}


#live-casino-panel .gm-game details[open] > .gm-description,
#games-panel .gm-game details[open] > .gm-description {
position: absolute;

left: 0;
right: 0;

top: calc(100% - 270px);

display: block;

width: 100%;
min-height: 250px;

padding: 20px 22px;

background: #0a0f0d;

border: 1px solid rgba(142, 232, 95, 0.44);
border-radius: 9px;

box-shadow:
0 14px 36px rgba(0, 0, 0, 0.30);

z-index: 20;
}



#live-casino-panel .gm-description dl,
#games-panel .gm-description dl {
display: grid;

grid-template-columns:
minmax(135px, 0.78fr)
minmax(0, 1.05fr)
minmax(0, 1.05fr)
minmax(0, 1.05fr)
minmax(0, 1.05fr);

gap: 0;

width: 100%;

margin: 0;
}

#live-casino-panel .gm-rule,
#games-panel .gm-rule {
min-width: 0;

padding: 0 16px;

border-right: 1px solid rgba(255, 255, 255, 0.08);
}

#live-casino-panel .gm-rule:first-child,
#games-panel .gm-rule:first-child {
padding-left: 0;
}

#live-casino-panel .gm-rule:last-child,
#games-panel .gm-rule:last-child {
padding-right: 0;
border-right: 0;
}

#live-casino-panel .gm-rule dt,
#games-panel .gm-rule dt {
margin: 0 0 8px;

font-size: 11px;
font-weight: 800;
line-height: 1.3;

letter-spacing: 0.45px;
text-transform: uppercase;

color: var(--gold);
}

#live-casino-panel .gm-rule dd,
#games-panel .gm-rule dd {
margin: 0;

font-size: 12.5px;
line-height: 1.58;

color: rgba(255, 255, 255, 0.77);
}

/* =====================================================
END LIVE + GAMES OPEN DESCRIPTION
===================================================== */


/* =====================================================
LIVE + GAMES — LARGE TABLET
===================================================== */

@media (max-width: 1180px) {

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

#live-casino-panel .gm-grid:has(.gm-game details[open]),
#games-panel .gm-grid:has(.gm-game details[open]) {
padding-bottom: 390px;
}

#live-casino-panel .gm-game details[open] > .gm-description,
#games-panel .gm-game details[open] > .gm-description {
top: calc(100% - 390px);

min-height: 370px;
}

#live-casino-panel .gm-description dl,
#games-panel .gm-description dl {
grid-template-columns: repeat(3, minmax(0, 1fr));

row-gap: 24px;
}

#live-casino-panel .gm-rule:nth-child(3),
#games-panel .gm-rule:nth-child(3) {
border-right: 0;
}

#live-casino-panel .gm-rule:nth-child(4),
#games-panel .gm-rule:nth-child(4) {
padding-left: 0;
}

}


/* =====================================================
LIVE + GAMES — TABLET
===================================================== */

@media (max-width: 900px) {

#live-casino-panel .gm-grid,
#games-panel .gm-grid {
grid-template-columns: repeat(3, minmax(0, 1fr));
}

#live-casino-panel .gm-grid:has(.gm-game details[open]),
#games-panel .gm-grid:has(.gm-game details[open]) {
padding-bottom: 500px;
}

#live-casino-panel .gm-game details[open] > .gm-description,
#games-panel .gm-game details[open] > .gm-description {
top: calc(100% - 500px);

min-height: 480px;
}

#live-casino-panel .gm-description dl,
#games-panel .gm-description dl {
grid-template-columns: repeat(2, minmax(0, 1fr));

row-gap: 22px;
}

#live-casino-panel .gm-rule,
#games-panel .gm-rule {
border-right: 1px solid rgba(255, 255, 255, 0.08);
}

#live-casino-panel .gm-rule:nth-child(even),
#games-panel .gm-rule:nth-child(even) {
border-right: 0;
}

#live-casino-panel .gm-rule:nth-child(odd),
#games-panel .gm-rule:nth-child(odd) {
padding-left: 0;
}

}


/* =====================================================
LIVE + GAMES — MOBILE
===================================================== */

@media (max-width: 650px) {

#live-casino-panel > .gm-category-switcher,
#games-panel > .gm-category-switcher {
display: grid;

grid-template-columns: 1fr 1fr;

gap: 8px;

margin-top: 20px;
margin-bottom: 28px;
}

#live-casino-panel > .gm-category-switcher .gm-tab,
#games-panel > .gm-category-switcher .gm-tab {
width: 100%;
min-width: 0;
min-height: 48px;

padding: 12px 10px;

font-size: 13px;
}

#live-casino-panel .gm-grid,
#games-panel .gm-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));

gap: 12px;
}

#live-casino-panel .gm-grid:has(.gm-game details[open]),
#games-panel .gm-grid:has(.gm-game details[open]) {
padding-bottom: 760px;
}

#live-casino-panel .gm-game details[open] > .gm-description,
#games-panel .gm-game details[open] > .gm-description {
top: calc(100% - 760px);

min-height: 740px;

padding: 18px;
}

#live-casino-panel .gm-description dl,
#games-panel .gm-description dl {
grid-template-columns: 1fr;
}

#live-casino-panel .gm-rule,
#games-panel .gm-rule,
#live-casino-panel .gm-rule:first-child,
#games-panel .gm-rule:first-child,
#live-casino-panel .gm-rule:last-child,
#games-panel .gm-rule:last-child {
padding: 13px 0;

border-right: 0;
border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}

#live-casino-panel .gm-rule:first-child,
#games-panel .gm-rule:first-child {
padding-top: 0;
}

#live-casino-panel .gm-rule:last-child,
#games-panel .gm-rule:last-child {
border-bottom: 0;
}

#live-casino-panel > h3,
#games-panel > h3 {
font-size: 31px;
}

#live-casino-panel .gm-category-head h4,
#games-panel .gm-category-head h4,
#live-casino-panel > .gm-panel > h4,
#games-panel > .gm-panel > h4 {
font-size: 26px;
}

#live-casino-panel .gm-category-intro,
#games-panel .gm-category-intro,
#live-casino-panel .gm-panel-intro,
#games-panel .gm-panel-intro {
font-size: 15px;
line-height: 1.65;
}

}


/* =====================================================
END LIVE CASINO + GAMES FINAL LAYOUT
===================================================== */

/* =====================================================
   START GAMES SECTION — 28MARS
===================================================== */

/* -----------------------------------------------------
   GAMES MAIN SECTION
----------------------------------------------------- */

#games-panel {
  width: 100%;
}

#games-panel .gm-section-head {
  width: 100%;
  max-width: none;

  margin: 0 0 30px;
}

#games-panel .gm-section-head h3 {
  margin: 0 0 18px;

  color: #ffffff;

  font-size: clamp(36px, 3.6vw, 52px);
  font-weight: 800;
  line-height: 1.08;

  letter-spacing: -1.2px;
}

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

  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.78);

  font-size: 16px;
  line-height: 1.72;
}


/* -----------------------------------------------------
   GAMES CATEGORY SWITCHER
----------------------------------------------------- */

#games-panel > .gm-category-switcher {
  width: 100%;

  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));

  gap: 12px;

  margin: 30px 0 42px;
}

#games-panel > .gm-category-switcher .gm-tab {
  width: 100%;

  min-height: 54px;

  padding: 14px 18px;

  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;

  text-align: center;

  border-radius: 7px;
}


/* -----------------------------------------------------
   CATEGORY INTRO
----------------------------------------------------- */

#games-panel .gm-category-head {
  width: 100%;
  max-width: none;

  margin: 0 0 28px;
}

#games-panel .gm-category-head h4 {
  position: relative;

  margin: 0 0 18px;
  padding-left: 18px;

  color: #ffffff;

  font-size: clamp(30px, 2.8vw, 40px);
  font-weight: 800;
  line-height: 1.12;

  letter-spacing: -0.7px;
}

#games-panel .gm-category-head h4::before {
  content: "";

  position: absolute;

  left: 0;
  top: 0.1em;

  width: 4px;
  height: 1.05em;

  background: var(--green);

  border-radius: 5px;
}

#games-panel .gm-category-intro {
  width: 100%;
  max-width: none;

  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.76);

  font-size: 16px;
  line-height: 1.72;
}


/* -----------------------------------------------------
   GAMES GRID — 5 CARDS PER ROW
----------------------------------------------------- */

#games-panel .gm-grid--five {
  width: 100%;

  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));

  gap: 16px;

  margin-top: 24px;
}


/* -----------------------------------------------------
   GAME CARDS
----------------------------------------------------- */

#games-panel .gm-grid--five .gm-game {
  min-width: 0;
}

#games-panel .gm-grid--five .gm-game details {
  height: 100%;

  background: #0a100d;

  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 9px;

  overflow: visible;

  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}

#games-panel .gm-grid--five .gm-game details:hover {
  border-color: rgba(142, 232, 95, 0.40);

  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.28);

  transform: translateY(-2px);
}

#games-panel .gm-grid--five .gm-game details[open] {
  border-color: rgba(142, 232, 95, 0.58);

  transform: none;
}


/* -----------------------------------------------------
   GAME CARD IMAGE
----------------------------------------------------- */

#games-panel .gm-grid--five .gm-game summary img {
  width: 100%;

  aspect-ratio: 16 / 10;

  object-fit: cover;
  object-position: center;

  background: #101713;

  border-radius: 8px 8px 0 0;
}


/* -----------------------------------------------------
   GAME CARD TEXT
----------------------------------------------------- */

#games-panel .gm-grid--five .gm-card-copy {
  min-height: 86px;

  padding: 14px 36px 14px 14px;
}

#games-panel .gm-grid--five .gm-name {
  color: #ffffff;

  font-size: 14px;
  font-weight: 800;
  line-height: 1.35;
}

#games-panel .gm-grid--five .gm-hint {
  margin-top: 6px;

  color: var(--green);

  font-size: 12px;
  font-weight: 800;
}


/* -----------------------------------------------------
   OPEN GAME DESCRIPTION
----------------------------------------------------- */

#games-panel .gm-grid--five:has(.gm-game details[open]) {
  padding-bottom: 250px;
}

#games-panel .gm-grid--five .gm-game details[open] > .gm-description {
  top: calc(100% - 250px);

  min-height: 230px;

  padding: 22px 24px;

  background:
    linear-gradient(
      180deg,
      rgba(12, 19, 15, 0.98),
      rgba(7, 12, 10, 0.99)
    );

  border: 1px solid rgba(142, 232, 95, 0.42);
  border-radius: 9px;

  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.32);
}


/* -----------------------------------------------------
   DESCRIPTION COLUMNS
----------------------------------------------------- */

#games-panel .gm-description dl {
  display: grid;

  grid-template-columns:
    minmax(150px, 0.7fr)
    repeat(3, minmax(0, 1fr));

  gap: 0;

  margin: 0;
}

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

  padding: 0 20px;

  border-right: 1px solid rgba(255, 255, 255, 0.08);
}

#games-panel .gm-rule:first-child {
  padding-left: 0;
}

#games-panel .gm-rule:last-child {
  padding-right: 0;

  border-right: 0;
}

#games-panel .gm-rule dt {
  margin: 0 0 9px;

  color: var(--gold);

  font-size: 11px;
  font-weight: 800;
  line-height: 1.3;

  letter-spacing: 0.6px;
  text-transform: uppercase;
}

#games-panel .gm-rule dd {
  margin: 0;

  color: rgba(255, 255, 255, 0.76);

  font-size: 13px;
  line-height: 1.62;
}


/* =====================================================
   GAMES — LARGE TABLET
===================================================== */

@media (max-width: 1180px) {

  #games-panel > .gm-category-switcher {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

  #games-panel .gm-grid--five:has(.gm-game details[open]) {
    padding-bottom: 310px;
  }

  #games-panel .gm-grid--five .gm-game details[open] > .gm-description {
    top: calc(100% - 310px);

    min-height: 290px;
  }

}


/* =====================================================
   GAMES — TABLET
===================================================== */

@media (max-width: 900px) {

  #games-panel .gm-grid--five {
    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 14px;
  }

  #games-panel .gm-grid--five:has(.gm-game details[open]) {
    padding-bottom: 400px;
  }

  #games-panel .gm-grid--five .gm-game details[open] > .gm-description {
    top: calc(100% - 400px);

    min-height: 380px;
  }

  #games-panel .gm-description dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));

    row-gap: 24px;
  }

  #games-panel .gm-rule:nth-child(2) {
    border-right: 0;
  }

  #games-panel .gm-rule:nth-child(3) {
    padding-left: 0;
  }

}


/* =====================================================
   GAMES — MOBILE
===================================================== */

@media (max-width: 650px) {

  #games-panel > .gm-category-switcher {
    grid-template-columns: 1fr;

    gap: 10px;

    margin-bottom: 32px;
  }

  #games-panel > .gm-category-switcher .gm-tab {
    min-height: 50px;
  }

  #games-panel .gm-grid--five {
    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 12px;
  }

  #games-panel .gm-category-head h4 {
    font-size: 28px;
  }

  #games-panel .gm-grid--five:has(.gm-game details[open]) {
    padding-bottom: 650px;
  }

  #games-panel .gm-grid--five .gm-game details[open] > .gm-description {
    top: calc(100% - 650px);

    min-height: 630px;

    padding: 20px;
  }

  #games-panel .gm-description dl {
    grid-template-columns: 1fr;
  }

  #games-panel .gm-rule,
  #games-panel .gm-rule:first-child,
  #games-panel .gm-rule:nth-child(3),
  #games-panel .gm-rule:last-child {
    padding: 14px 0;

    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }

  #games-panel .gm-rule:first-child {
    padding-top: 0;
  }

  #games-panel .gm-rule:last-child {
    border-bottom: 0;
  }

}


/* =====================================================
   GAMES — SMALL MOBILE
===================================================== */

@media (max-width: 430px) {

  #games-panel .gm-grid--five {
    grid-template-columns: 1fr;
  }

  #games-panel .gm-card-copy {
    min-height: 76px;
  }

  #games-panel .gm-grid--five:has(.gm-game details[open]) {
    padding-bottom: 690px;
  }

  #games-panel .gm-grid--five .gm-game details[open] > .gm-description {
    top: calc(100% - 690px);

    min-height: 670px;
  }

}

/* =====================================================
   END GAMES SECTION — 28MARS
===================================================== */

/* =====================================================
   START GAMES — FOUR CATEGORY LAYOUT
===================================================== */

/* Main Games section */

#games-panel {
  width: 100%;
  max-width: var(--container);
  margin: 0 auto;
}

#games-panel > h3 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: clamp(38px, 3.6vw, 54px);
  font-weight: 800;
  line-height: 1.08;

  letter-spacing: -1.4px;
}


/* =====================================================
   GAMES INTRO TEXT
===================================================== */

#games-panel > .gm-panel-intro {
  width: 100%;
  max-width: none;

  margin: 0 0 15px;

  color: rgba(255, 255, 255, 0.78);

  font-size: 16px;
  line-height: 1.7;
}


/* =====================================================
   GAMES CATEGORY SWITCHER
===================================================== */

#games-panel > .gm-category-switcher {
  width: 100%;

  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));

  gap: 12px;

  margin: 30px 0 42px;
  padding: 0;
}

#games-panel > .gm-category-switcher .gm-tab {
  width: 100%;
  min-height: 54px;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 13px 18px;

  color: rgba(255, 255, 255, 0.78);
  background: #0a100d;

  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 7px;

  font-size: 14px;
  font-weight: 800;
  line-height: 1.25;

  text-align: center;

  cursor: pointer;

  transition:
    color 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}

#games-panel > .gm-category-switcher .gm-tab:hover {
  color: #ffffff;

  border-color: rgba(142, 232, 95, 0.55);

  transform: translateY(-1px);
}

#games-panel > .gm-category-switcher .gm-choice:checked + .gm-tab {
  color: #061006;
  background: var(--green);

  border-color: var(--green);

  box-shadow: 0 8px 22px rgba(142, 232, 95, 0.15);
}


/* =====================================================
   CATEGORY PANEL
===================================================== */

#games-panel > .gm-panel {
  width: 100%;

  margin: 0;
  padding: 0;
}


/* =====================================================
   CATEGORY INTRO
===================================================== */

#games-panel .gm-category-head {
  width: 100%;
  max-width: none;

  margin: 0 0 30px;
}

#games-panel .gm-category-head h4 {
  position: relative;

  margin: 0 0 20px;
  padding-left: 18px;

  color: #ffffff;

  font-size: clamp(30px, 2.8vw, 40px);
  font-weight: 800;
  line-height: 1.15;

  letter-spacing: -0.7px;
}

#games-panel .gm-category-head h4::before {
  content: "";

  position: absolute;

  left: 0;
  top: 0.08em;

  width: 4px;
  height: 1.15em;

  background: var(--green);

  border-radius: 4px;
}

#games-panel .gm-category-intro {
  width: 100%;
  max-width: none;

  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.76);

  font-size: 16px;
  line-height: 1.72;
}

#games-panel .gm-category-intro:last-child {
  margin-bottom: 0;
}


/* =====================================================
   GAMES GRID — 5 CARDS PER ROW
===================================================== */

#games-panel .gm-grid {
  position: relative;

  width: 100%;

  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));

  gap: 16px;

  margin: 0;
}


/* =====================================================
   GAME CARD
===================================================== */

#games-panel .gm-game {
  min-width: 0;
}

#games-panel .gm-game details {
  height: 100%;

  background: #0a100d;

  border: 1px solid rgba(255, 255, 255, 0.11);
  border-radius: 9px;

  overflow: visible;

  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}

#games-panel .gm-game details:hover {
  border-color: rgba(142, 232, 95, 0.38);

  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.28);

  transform: translateY(-2px);
}

#games-panel .gm-game details[open] {
  border-color: rgba(142, 232, 95, 0.58);

  transform: none;
}


/* =====================================================
   CARD SUMMARY
===================================================== */

#games-panel .gm-game summary {
  position: relative;

  display: block;

  width: 100%;

  overflow: hidden;

  list-style: none;
  cursor: pointer;

  border-radius: 8px;
}

#games-panel .gm-game summary::-webkit-details-marker {
  display: none;
}

#games-panel .gm-game summary::marker {
  display: none;
}


/* =====================================================
   CARD IMAGE
===================================================== */

#games-panel .gm-game summary img {
  display: block;

  width: 100%;
  height: auto;

  aspect-ratio: 16 / 9;

  object-fit: cover;
  object-position: center;

  background: #101713;

  border-radius: 8px 8px 0 0;
}


/* =====================================================
   CARD TEXT
===================================================== */

#games-panel .gm-card-copy {
  position: relative;

  display: block;

  min-height: 82px;

  padding: 14px 34px 14px 14px;
}

#games-panel .gm-name {
  display: block;

  color: #ffffff;

  font-size: 14px;
  font-weight: 800;
  line-height: 1.3;
}

#games-panel .gm-hint {
  display: block;

  margin-top: 7px;

  color: var(--green);

  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
}

#games-panel .gm-card-copy::after {
  content: "+";

  position: absolute;

  right: 13px;
  top: 50%;

  transform: translateY(-50%);

  color: var(--green);

  font-size: 21px;
  font-weight: 400;
  line-height: 1;
}

#games-panel .gm-game details[open] .gm-card-copy::after {
  content: "−";
}


/* =====================================================
   OPEN DESCRIPTION
===================================================== */

#games-panel .gm-description {
  display: none;
}

#games-panel .gm-grid:has(.gm-game details[open]) {
  padding-bottom: 255px;
}

#games-panel .gm-game details[open] > .gm-description {
  position: absolute;

  left: 0;
  right: 0;

  top: calc(100% - 235px);

  display: block;

  min-height: 220px;

  padding: 22px 24px;

  background: #090f0c;

  border: 1px solid rgba(142, 232, 95, 0.42);
  border-radius: 9px;

  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.32);

  z-index: 20;
}


/* =====================================================
   DESCRIPTION COLUMNS
===================================================== */

#games-panel .gm-description dl {
  width: 100%;

  display: grid;
  grid-template-columns:
    minmax(150px, 0.75fr)
    minmax(0, 1.2fr)
    minmax(0, 1.2fr)
    minmax(0, 1.25fr);

  gap: 0;

  margin: 0;
}

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

  padding: 0 22px;

  border-right: 1px solid rgba(255, 255, 255, 0.08);
}

#games-panel .gm-rule:first-child {
  padding-left: 0;
}

#games-panel .gm-rule:last-child {
  padding-right: 0;

  border-right: 0;
}

#games-panel .gm-rule dt {
  margin: 0 0 10px;

  color: var(--gold);

  font-size: 11px;
  font-weight: 800;
  line-height: 1.3;

  letter-spacing: 0.6px;
  text-transform: uppercase;
}

#games-panel .gm-rule dd {
  margin: 0;

  color: rgba(255, 255, 255, 0.76);

  font-size: 13px;
  line-height: 1.62;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1100px) {

  #games-panel > .gm-category-switcher {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

  #games-panel .gm-grid:has(.gm-game details[open]) {
    padding-bottom: 380px;
  }

  #games-panel .gm-game details[open] > .gm-description {
    top: calc(100% - 360px);

    min-height: 340px;
  }

  #games-panel .gm-description dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));

    row-gap: 24px;
  }

  #games-panel .gm-rule:nth-child(2) {
    border-right: 0;
  }

  #games-panel .gm-rule:nth-child(3) {
    padding-left: 0;
  }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 700px) {

  #games-panel > .gm-category-switcher {
    grid-template-columns: 1fr;

    gap: 9px;

    margin-bottom: 32px;
  }

  #games-panel > .gm-category-switcher .gm-tab {
    min-height: 50px;
  }

  #games-panel .gm-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 12px;
  }

  #games-panel .gm-category-head h4 {
    font-size: 28px;
  }

  #games-panel .gm-category-intro {
    font-size: 15px;
    line-height: 1.65;
  }

  #games-panel .gm-grid:has(.gm-game details[open]) {
    padding-bottom: 660px;
  }

  #games-panel .gm-game details[open] > .gm-description {
    top: calc(100% - 640px);

    min-height: 620px;

    padding: 20px;
  }

  #games-panel .gm-description dl {
    grid-template-columns: 1fr;

    row-gap: 0;
  }

  #games-panel .gm-rule,
  #games-panel .gm-rule:first-child,
  #games-panel .gm-rule:nth-child(2),
  #games-panel .gm-rule:nth-child(3),
  #games-panel .gm-rule:last-child {
    padding: 14px 0;

    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07);
  }

  #games-panel .gm-rule:first-child {
    padding-top: 0;
  }

  #games-panel .gm-rule:last-child {
    border-bottom: 0;
  }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

  #games-panel .gm-grid {
    grid-template-columns: 1fr;
  }

  #games-panel .gm-card-copy {
    min-height: 74px;
  }

}


/* =====================================================
   END GAMES — FOUR CATEGORY LAYOUT
===================================================== */
/* =====================================================
   GAMES CARD VISUAL FIX — FINAL OVERRIDE
===================================================== */

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

#games-panel .gm-game details {
  background: #090e0c;
  border-radius: 10px;
  overflow: hidden;
}

#games-panel .gm-game summary {
  display: flex;
  flex-direction: column;
  height: auto;
  min-height: 0;
  overflow: hidden;
}

#games-panel .gm-game summary img {
  display: block;
  width: 100%;
  height: auto;

  aspect-ratio: 1.48 / 1;
  object-fit: cover;
  object-position: center;

  border-radius: 9px 9px 0 0;
}

#games-panel .gm-card-copy {
  display: block;
  position: relative;

  min-height: 58px;

  padding: 10px 32px 10px 12px;

  background: #090e0c;
}

#games-panel .gm-name {
  font-size: 13px;
  font-weight: 800;
  line-height: 1.25;
}

#games-panel .gm-hint {
  margin-top: 4px;

  font-size: 11px;
  font-weight: 800;
  line-height: 1.15;
}

#games-panel .gm-card-copy::after {
  right: 11px;

  font-size: 20px;
}

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

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

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

  #games-panel .gm-game summary img {
    aspect-ratio: 1.4 / 1;
  }
}

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

/* =====================================================
   END GAMES CARD VISUAL FIX
===================================================== */

/* =====================================================
   FINAL GAME CARD LAYOUT
   POKIES / LIVE CASINO / GAMES
===================================================== */


/* =====================================================
   POKIES + LIVE CASINO
   6 CARDS PER ROW
===================================================== */

#slots-panel .gm-grid,
#live-casino-panel .gm-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 14px;
  align-items: start;
}


/* Cards */

#slots-panel .gm-game,
#live-casino-panel .gm-game {
  min-width: 0;
}

#slots-panel .gm-game details,
#live-casino-panel .gm-game details {
  width: 100%;
  background: #08100c;
  border: 1px solid rgba(255, 255, 255, 0.11);
  border-radius: 9px;
  overflow: hidden;
}


/* Summary */

#slots-panel .gm-game summary,
#live-casino-panel .gm-game summary {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 0;
  overflow: hidden;
}


/* Horizontal casino artwork */

#slots-panel .gm-game summary img,
#live-casino-panel .gm-game summary img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1.72 / 1;
  object-fit: cover;
  object-position: center;
  border-radius: 8px 8px 0 0;
}


/* =====================================================
   GAMES
   5 CARDS PER ROW = 2 ROWS OF 5
===================================================== */

#games-panel .gm-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
  align-items: start;
}

#games-panel .gm-game {
  min-width: 0;
}

#games-panel .gm-game details {
  width: 100%;
  background: #08100c;
  border: 1px solid rgba(255, 255, 255, 0.11);
  border-radius: 9px;
  overflow: hidden;
}

#games-panel .gm-game summary {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 0;
  overflow: hidden;
}


/* IMPORTANT:
   Games artwork is much more vertical than pokies/live artwork.
*/

#games-panel .gm-game summary img {
  display: block;
  width: 100%;

  height: 220px;

  object-fit: cover;
  object-position: center;

  border-radius: 8px 8px 0 0;
}


/* =====================================================
   CARD INFORMATION STRIP
===================================================== */

#slots-panel .gm-card-copy,
#live-casino-panel .gm-card-copy,
#games-panel .gm-card-copy {
  position: relative;
  display: block;
  width: 100%;

  min-height: 52px;

  padding: 8px 31px 8px 10px;

  background: #08100c;
  box-sizing: border-box;
}


/* Game title */

#slots-panel .gm-name,
#live-casino-panel .gm-name,
#games-panel .gm-name {
  display: block;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.2;
}


/* How it works */

#slots-panel .gm-hint,
#live-casino-panel .gm-hint,
#games-panel .gm-hint {
  display: block;
  margin-top: 4px;

  font-size: 11px;
  font-weight: 800;
  line-height: 1.1;
}


/* Plus */

#slots-panel .gm-card-copy::after,
#live-casino-panel .gm-card-copy::after,
#games-panel .gm-card-copy::after {
  right: 9px;
  bottom: 11px;
  font-size: 18px;
  line-height: 1;
}


/* =====================================================
   RESPONSIVE
===================================================== */

@media (max-width: 1250px) {

  #slots-panel .gm-grid,
  #live-casino-panel .gm-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

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

}


@media (max-width: 1000px) {

  #slots-panel .gm-grid,
  #live-casino-panel .gm-grid,
  #games-panel .gm-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #games-panel .gm-game summary img {
    height: 230px;
  }

}


@media (max-width: 700px) {

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

  #games-panel .gm-game summary img {
    height: 240px;
  }

}


@media (max-width: 420px) {

  #slots-panel .gm-grid,
  #live-casino-panel .gm-grid,
  #games-panel .gm-grid {
    grid-template-columns: 1fr;
  }

  #games-panel .gm-game summary img {
    height: auto;
    aspect-ratio: 4 / 3;
  }

}


/* =====================================================
   END FINAL GAME CARD LAYOUT
===================================================== */
/* =====================================================
   FINAL CARD IMAGE HEIGHT OVERRIDE
   POKIES / LIVE CASINO / GAMES
===================================================== */

/* POKIES — keep 6 cards per row */
#slots-panel .gm-game summary img {
  width: 100%;
  height: 150px !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block;
}


/* LIVE CASINO — keep 6 cards per row */
#live-casino-panel .gm-game summary img {
  width: 100%;
  height: 160px !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block;
}


/* GAMES — keep 5 cards per row */
#games-panel .gm-game summary img {
  width: 100%;
  height: 245px !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1100px) {

  #slots-panel .gm-game summary img {
    height: 160px !important;
  }

  #live-casino-panel .gm-game summary img {
    height: 170px !important;
  }

  #games-panel .gm-game summary img {
    height: 235px !important;
  }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 700px) {

  #slots-panel .gm-game summary img,
  #live-casino-panel .gm-game summary img {
    height: 180px !important;
  }

  #games-panel .gm-game summary img {
    height: 240px !important;
  }

}

/* =====================================================
   FINAL IMAGE HEIGHT TUNING
   KEEP EXISTING CARD WIDTHS / COLUMNS
===================================================== */


/* POKIES
   6 cards per row
   Slightly taller than current version
----------------------------------------------------- */

#slots-panel .gm-game summary img {
  width: 100%;
  height: 165px !important;
  object-fit: cover !important;
  object-position: center center !important;
}


/* LIVE CASINO
   6 cards per row
   Keep horizontal live covers wider and avoid
   excessive side cropping
----------------------------------------------------- */

#live-casino-panel .gm-game summary img {
  width: 100%;
  height: 170px !important;
  object-fit: cover !important;
  object-position: center center !important;
}


/* GAMES
   5 cards per row
   Portrait covers need considerably more height
----------------------------------------------------- */

#games-panel .gm-game summary img {
  width: 100%;
  height: 265px !important;
  object-fit: cover !important;
  object-position: center center !important;
}


/* =====================================================
   RESPONSIVE
===================================================== */

@media (max-width: 1100px) {

  #slots-panel .gm-game summary img {
    height: 170px !important;
  }

  #live-casino-panel .gm-game summary img {
    height: 175px !important;
  }

  #games-panel .gm-game summary img {
    height: 255px !important;
  }

}


@media (max-width: 700px) {

  #slots-panel .gm-game summary img {
    height: 185px !important;
  }

  #live-casino-panel .gm-game summary img {
    height: 190px !important;
  }

  #games-panel .gm-game summary img {
    height: 245px !important;
  }

}


/* =====================================================
   FINAL CASINO CARD IMAGE LAYOUT
   POKIES: 6 PER ROW
   LIVE CASINO: 6 PER ROW
   GAMES: 5 PER ROW
===================================================== */


/* =====================================================
   POKIES + LIVE CASINO
   SIX CARDS PER ROW
===================================================== */

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


/* -----------------------------------------------------
   POKIES IMAGE AREA
----------------------------------------------------- */

#slots-panel .gm-game summary img {
  display: block !important;

  width: 100% !important;
  height: 145px !important;

  object-fit: contain !important;
  object-position: center center !important;

  aspect-ratio: auto !important;

  background: #081009 !important;
}


/* -----------------------------------------------------
   LIVE CASINO IMAGE AREA
----------------------------------------------------- */

#live-casino-panel .gm-game summary img {
  display: block !important;

  width: 100% !important;
  height: 155px !important;

  object-fit: contain !important;
  object-position: center center !important;

  aspect-ratio: auto !important;

  background: #081009 !important;
}


/* =====================================================
   GAMES
   EXACTLY FIVE CARDS PER ROW
===================================================== */

#games-panel .gm-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: start !important;
}


/* -----------------------------------------------------
   SAME CARD WIDTH / SAME VISUAL HEIGHT
----------------------------------------------------- */

#games-panel .gm-game {
  width: 100% !important;
  min-width: 0 !important;
}


/* -----------------------------------------------------
   GAMES IMAGE AREA

   Important:
   contain = no stretching
   contain = no side cropping
   contain = natural artwork remains visible
----------------------------------------------------- */

#games-panel .gm-game summary img {
  display: block !important;

  width: 100% !important;
  height: 300px !important;

  object-fit: contain !important;
  object-position: center center !important;

  aspect-ratio: auto !important;

  background: #081009 !important;
}


/* =====================================================
   SUMMARY
===================================================== */

#slots-panel .gm-game summary,
#live-casino-panel .gm-game summary,
#games-panel .gm-game summary {
  height: auto !important;
  min-height: 0 !important;
}


/* =====================================================
   CARD TEXT AREA
   KEEP IT COMPACT
===================================================== */

#slots-panel .gm-card-copy,
#live-casino-panel .gm-card-copy,
#games-panel .gm-card-copy {
  min-height: 48px !important;
}


/* =====================================================
   RESPONSIVE
===================================================== */

@media (max-width: 1200px) {

  #slots-panel .gm-grid,
  #live-casino-panel .gm-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

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

}


@media (max-width: 850px) {

  #slots-panel .gm-grid,
  #live-casino-panel .gm-grid,
  #games-panel .gm-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

}


@media (max-width: 620px) {

  #slots-panel .gm-grid,
  #live-casino-panel .gm-grid,
  #games-panel .gm-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

}


@media (max-width: 420px) {

  #slots-panel .gm-grid,
  #live-casino-panel .gm-grid,
  #games-panel .gm-grid {
    grid-template-columns: 1fr !important;
  }

}
/* =====================================================
   28MARS — GAMES SECTION FINAL FIX
   ONLY #games-panel
   5 CARDS PER ROW / 2 ROWS / FULL-WIDTH DESCRIPTION
===================================================== */

/* Main Games section */
#games-panel {
  width: 100% !important;
  max-width: var(--container) !important;
  margin: 0 auto !important;
}

/* Category buttons */
#games-panel > .gm-category-switcher {
  width: 100% !important;

  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;

  gap: 12px !important;

  margin: 30px 0 42px !important;
  padding: 0 !important;
}

#games-panel > .gm-category-switcher .gm-tab {
  width: 100% !important;
  min-height: 54px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 14px 18px !important;

  text-align: center !important;

  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;

  border-radius: 7px !important;
}

/* Category panel visibility */
#games-panel > .gm-panel[hidden] {
  display: none !important;
}

#games-panel > .gm-panel:not([hidden]) {
  display: block !important;
}

/* Category intro */
#games-panel .gm-category-head {
  width: 100% !important;
  max-width: none !important;

  margin: 0 0 30px !important;
}

#games-panel .gm-category-head h4 {
  position: relative !important;

  margin: 0 0 18px !important;
  padding-left: 18px !important;

  color: #ffffff !important;

  font-size: clamp(30px, 2.8vw, 40px) !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;

  letter-spacing: -0.7px !important;
}

#games-panel .gm-category-head h4::before {
  content: "" !important;

  position: absolute !important;

  left: 0 !important;
  top: 0.08em !important;

  width: 4px !important;
  height: 1.15em !important;

  background: var(--green) !important;
  border-radius: 4px !important;
}

#games-panel .gm-category-intro {
  width: 100% !important;
  max-width: none !important;

  margin: 0 0 14px !important;

  color: rgba(255, 255, 255, 0.76) !important;

  font-size: 16px !important;
  line-height: 1.72 !important;
}

/* =====================================================
   GAMES GRID — DESKTOP
   5 CARDS PER ROW
===================================================== */

#games-panel .gm-grid,
#games-panel .gm-grid--five {
  position: relative !important;

  width: 100% !important;

  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;

  gap: 16px !important;

  margin: 0 !important;

  align-items: start !important;
}

/* Card */
#games-panel .gm-game {
  width: 100% !important;
  min-width: 0 !important;
}

#games-panel .gm-game details {
  position: static !important;

  width: 100% !important;
  height: 100% !important;

  overflow: visible !important;

  background: #08100c !important;

  border: 1px solid rgba(255, 255, 255, 0.11) !important;
  border-radius: 10px !important;

  transform: none !important;

  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease !important;
}

#games-panel .gm-game details:hover {
  border-color: rgba(142, 232, 95, 0.40) !important;

  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.30) !important;

  transform: none !important;
}

#games-panel .gm-game details[open] {
  border-color: rgba(142, 232, 95, 0.62) !important;

  box-shadow: 0 0 0 1px rgba(142, 232, 95, 0.12) !important;
}

/* Summary/card clickable area */
#games-panel .gm-game summary {
  position: relative !important;

  display: flex !important;
  flex-direction: column !important;

  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;

  padding: 0 !important;

  overflow: hidden !important;

  list-style: none !important;
  cursor: pointer !important;

  border-radius: 9px !important;
}

#games-panel .gm-game summary::-webkit-details-marker {
  display: none !important;
}

#games-panel .gm-game summary::marker {
  display: none !important;
}

/* Image — portrait games, no squeezing */
#games-panel .gm-game summary img {
  display: block !important;

  width: 100% !important;
  height: 300px !important;

  aspect-ratio: auto !important;

  object-fit: cover !important;
  object-position: center center !important;

  background: #08100c !important;

  border-radius: 9px 9px 0 0 !important;

  transform: none !important;
}

/* Text strip */
#games-panel .gm-card-copy {
  position: relative !important;

  display: block !important;

  width: 100% !important;

  min-height: 58px !important;

  padding: 10px 34px 10px 12px !important;

  background: #08100c !important;

  box-sizing: border-box !important;
}

#games-panel .gm-name {
  display: block !important;

  color: #ffffff !important;

  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

#games-panel .gm-hint {
  display: block !important;

  margin-top: 5px !important;

  color: var(--green) !important;

  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
}

#games-panel .gm-card-copy::after {
  content: "+" !important;

  position: absolute !important;

  right: 11px !important;
  top: 50% !important;

  transform: translateY(-50%) !important;

  color: var(--green) !important;

  font-size: 20px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

#games-panel .gm-game details[open] .gm-card-copy::after {
  content: "−" !important;
}

/* =====================================================
   OPEN DESCRIPTION
   Full-width horizontal block under the cards
===================================================== */

#games-panel .gm-description {
  display: none !important;
}

#games-panel .gm-grid:has(.gm-game details[open]),
#games-panel .gm-grid--five:has(.gm-game details[open]) {
  padding-bottom: 325px !important;
}

#games-panel .gm-game details[open] > .gm-description {
  position: absolute !important;

  left: 0 !important;
  right: 0 !important;

  top: calc(100% - 305px) !important;

  display: block !important;

  width: 100% !important;
  min-height: 285px !important;

  padding: 24px 26px !important;

  background:
    linear-gradient(
      180deg,
      rgba(11, 18, 14, 0.99),
      rgba(6, 11, 9, 0.99)
    ) !important;

  border: 1px solid rgba(142, 232, 95, 0.44) !important;
  border-radius: 10px !important;

  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.34) !important;

  z-index: 50 !important;

  box-sizing: border-box !important;
}

/* Description content — quality text layout */
#games-panel .gm-description dl {
  display: grid !important;

  grid-template-columns:
    minmax(150px, 0.75fr)
    minmax(0, 1.25fr)
    minmax(0, 1.25fr)
    minmax(0, 1.35fr) !important;

  gap: 0 !important;

  width: 100% !important;

  margin: 0 !important;
}

#games-panel .gm-rule {
  min-width: 0 !important;

  padding: 0 22px !important;

  border-right: 1px solid rgba(255, 255, 255, 0.08) !important;

  box-sizing: border-box !important;
}

#games-panel .gm-rule:first-child {
  padding-left: 0 !important;
}

#games-panel .gm-rule:last-child {
  padding-right: 0 !important;

  border-right: 0 !important;
}

#games-panel .gm-rule dt {
  margin: 0 0 10px !important;

  color: var(--gold) !important;

  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;

  letter-spacing: 0.6px !important;
  text-transform: uppercase !important;
}

#games-panel .gm-rule dd {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.78) !important;

  font-size: 13px !important;
  line-height: 1.65 !important;
}

/* =====================================================
   RESPONSIVE
===================================================== */

@media (max-width: 1200px) {

  #games-panel .gm-grid,
  #games-panel .gm-grid--five {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  #games-panel .gm-game summary img {
    height: 285px !important;
  }

  #games-panel .gm-grid:has(.gm-game details[open]),
  #games-panel .gm-grid--five:has(.gm-game details[open]) {
    padding-bottom: 390px !important;
  }

  #games-panel .gm-game details[open] > .gm-description {
    top: calc(100% - 370px) !important;

    min-height: 350px !important;
  }

  #games-panel .gm-description dl {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

    row-gap: 24px !important;
  }

  #games-panel .gm-rule:nth-child(2) {
    border-right: 0 !important;
  }

  #games-panel .gm-rule:nth-child(3) {
    padding-left: 0 !important;
  }

}

@media (max-width: 850px) {

  #games-panel > .gm-category-switcher {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #games-panel .gm-grid,
  #games-panel .gm-grid--five {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;

    gap: 14px !important;
  }

  #games-panel .gm-game summary img {
    height: 270px !important;
  }

  #games-panel .gm-grid:has(.gm-game details[open]),
  #games-panel .gm-grid--five:has(.gm-game details[open]) {
    padding-bottom: 430px !important;
  }

  #games-panel .gm-game details[open] > .gm-description {
    top: calc(100% - 410px) !important;

    min-height: 390px !important;
  }

}

@media (max-width: 650px) {

  #games-panel > .gm-category-switcher {
    grid-template-columns: 1fr !important;

    gap: 10px !important;

    margin-bottom: 32px !important;
  }

  #games-panel .gm-grid,
  #games-panel .gm-grid--five {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

    gap: 12px !important;
  }

  #games-panel .gm-game summary img {
    height: 245px !important;
  }

  #games-panel .gm-card-copy {
    min-height: 56px !important;
  }

  #games-panel .gm-grid:has(.gm-game details[open]),
  #games-panel .gm-grid--five:has(.gm-game details[open]) {
    padding-bottom: 690px !important;
  }

  #games-panel .gm-game details[open] > .gm-description {
    top: calc(100% - 670px) !important;

    min-height: 650px !important;

    padding: 20px !important;
  }

  #games-panel .gm-description dl {
    grid-template-columns: 1fr !important;

    row-gap: 0 !important;
  }

  #games-panel .gm-rule,
  #games-panel .gm-rule:first-child,
  #games-panel .gm-rule:nth-child(2),
  #games-panel .gm-rule:nth-child(3),
  #games-panel .gm-rule:last-child {
    padding: 14px 0 !important;

    border-right: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
  }

  #games-panel .gm-rule:first-child {
    padding-top: 0 !important;
  }

  #games-panel .gm-rule:last-child {
    border-bottom: 0 !important;
  }

}

@media (max-width: 420px) {

  #games-panel .gm-grid,
  #games-panel .gm-grid--five {
    grid-template-columns: 1fr !important;
  }

  #games-panel .gm-game summary img {
    height: auto !important;
    aspect-ratio: 2 / 3 !important;
  }

  #games-panel .gm-grid:has(.gm-game details[open]),
  #games-panel .gm-grid--five:has(.gm-game details[open]) {
    padding-bottom: 760px !important;
  }

  #games-panel .gm-game details[open] > .gm-description {
    top: calc(100% - 740px) !important;

    min-height: 720px !important;
  }

}

/* =====================================================
   END 28MARS — GAMES SECTION FINAL FIX
===================================================== */
/* =====================================================
   28MARS — GAME CATALOGUE UNIFIED LAYOUT V3
   INSERT AT THE VERY END OF style.css
   CSS ONLY — HTML NOT TOUCHED
===================================================== */

/* Wider catalogue area */
.gm-library {
  width: min(1780px, calc(100vw - 56px)) !important;
  max-width: none !important;

  margin-left: auto !important;
  margin-right: auto !important;

  padding-left: 28px !important;
  padding-right: 28px !important;
}

/* Make main catalogue header more compact */
.gm-heading {
  max-width: none !important;
  margin-bottom: 28px !important;
}

.gm-heading h2 {
  max-width: 1180px !important;
  margin-bottom: 18px !important;

  font-size: clamp(42px, 4vw, 66px) !important;
  line-height: 1.05 !important;
}

.gm-heading .gm-lead {
  max-width: 1380px !important;
  margin-bottom: 10px !important;

  font-size: 16px !important;
  line-height: 1.58 !important;
}

/* Main buttons: Pokies / Live Casino / Games */
.gm-main-switcher {
  width: 100% !important;
  max-width: 860px !important;

  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;

  gap: 12px !important;

  margin: 24px 0 32px !important;
}

.gm-main-switcher .gm-tab {
  min-height: 58px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 15px 20px !important;

  border-radius: 10px !important;

  font-size: 15px !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
}

/* =====================================================
   ONE LOGIC FOR ALL THREE SECTIONS
   Pokies / Live Casino / Games
===================================================== */

#slots-panel,
#live-casino-panel,
#games-panel {
  width: 100% !important;
  max-width: none !important;
}

#slots-panel:not([hidden]),
#live-casino-panel:not([hidden]),
#games-panel:not([hidden]) {
  display: grid !important;

  grid-template-columns: 270px minmax(0, 1fr) !important;
  column-gap: 34px !important;

  align-items: start !important;
}

#slots-panel[hidden],
#live-casino-panel[hidden],
#games-panel[hidden] {
  display: none !important;
}

/* Section intro: title left, text right */
#slots-panel > .gm-section-head,
#live-casino-panel > .gm-section-head,
#games-panel > .gm-section-head {
  grid-column: 1 / -1 !important;

  display: grid !important;
  grid-template-columns: 300px minmax(0, 1fr) !important;
  column-gap: 52px !important;

  max-width: none !important;

  margin: 0 0 30px !important;
}

#slots-panel > .gm-section-head h3,
#live-casino-panel > .gm-section-head h3,
#games-panel > .gm-section-head h3 {
  grid-column: 1 !important;
  grid-row: 1 / span 5 !important;

  margin: 0 !important;

  font-size: clamp(36px, 3.1vw, 54px) !important;
  line-height: 1.08 !important;
  letter-spacing: -1px !important;
}

#slots-panel > .gm-section-head .gm-panel-intro,
#live-casino-panel > .gm-section-head .gm-panel-intro,
#games-panel > .gm-section-head .gm-panel-intro {
  grid-column: 2 !important;

  max-width: none !important;

  margin: 0 0 10px !important;

  font-size: 15px !important;
  line-height: 1.55 !important;
}

/* =====================================================
   LEFT CATEGORY MENU FOR ALL SECTIONS
===================================================== */

#slots-panel > .gm-category-switcher,
#live-casino-panel > .gm-category-switcher,
#games-panel > .gm-category-switcher {
  grid-column: 1 !important;
  grid-row: 2 / span 3 !important;

  position: sticky !important;
  top: 104px !important;
  z-index: 30 !important;

  width: 100% !important;

  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;

  margin: 0 !important;
  padding: 14px !important;

  background:
    linear-gradient(
      180deg,
      rgba(7, 15, 10, 0.97),
      rgba(4, 9, 7, 0.97)
    ) !important;

  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 16px !important;

  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.28) !important;
}

#slots-panel > .gm-category-switcher::before {
  content: "Pokies category" !important;
}

#live-casino-panel > .gm-category-switcher::before {
  content: "Live category" !important;
}

#games-panel > .gm-category-switcher::before {
  content: "Games category" !important;
}

#slots-panel > .gm-category-switcher::before,
#live-casino-panel > .gm-category-switcher::before,
#games-panel > .gm-category-switcher::before {
  display: block !important;

  margin: 0 2px 6px !important;

  color: var(--gold) !important;

  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  letter-spacing: 2px !important;
  text-transform: uppercase !important;
}

#slots-panel > .gm-category-switcher .gm-tab,
#live-casino-panel > .gm-category-switcher .gm-tab,
#games-panel > .gm-category-switcher .gm-tab {
  width: 100% !important;
  min-height: 58px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;

  padding: 14px 15px !important;

  border-radius: 12px !important;

  text-align: left !important;

  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1.25 !important;
}

#slots-panel > .gm-category-switcher .gm-choice:checked + .gm-tab,
#live-casino-panel > .gm-category-switcher .gm-choice:checked + .gm-tab,
#games-panel > .gm-category-switcher .gm-choice:checked + .gm-tab {
  background: var(--green) !important;
  color: #061008 !important;

  border-color: rgba(142, 232, 95, 0.95) !important;

  box-shadow:
    0 10px 24px rgba(142, 232, 95, 0.22),
    inset 0 0 0 1px rgba(0, 0, 0, 0.12) !important;
}

/* =====================================================
   RIGHT CONTENT AREA
===================================================== */

#slots-panel > .gm-panel,
#live-casino-panel > .gm-panel,
#games-panel > .gm-panel {
  grid-column: 2 !important;
  grid-row: 2 !important;

  min-width: 0 !important;
}

#slots-panel > .gm-panel[hidden],
#live-casino-panel > .gm-panel[hidden],
#games-panel > .gm-panel[hidden] {
  display: none !important;
}

#slots-panel > .gm-panel:not([hidden]),
#live-casino-panel > .gm-panel:not([hidden]),
#games-panel > .gm-panel:not([hidden]) {
  display: block !important;
}

/* Pokies "More about..." block: move it into right side, compact */
#slots-panel > .gm-info {
  grid-column: 2 !important;
  grid-row: 3 !important;

  margin: 22px 0 0 !important;
}

#slots-panel > .gm-info + .gm-panel {
  margin-top: 0 !important;
}

/* Category heading and text */
#slots-panel .gm-category-head,
#live-casino-panel .gm-category-head,
#games-panel .gm-category-head {
  margin: 0 0 22px !important;
}

#slots-panel .gm-category-head h4,
#live-casino-panel .gm-category-head h4,
#games-panel .gm-category-head h4 {
  position: relative !important;

  margin: 0 0 14px !important;
  padding-left: 18px !important;

  font-size: clamp(28px, 2.35vw, 40px) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.7px !important;
}

#slots-panel .gm-category-head h4::before,
#live-casino-panel .gm-category-head h4::before,
#games-panel .gm-category-head h4::before {
  content: "" !important;

  position: absolute !important;
  left: 0 !important;
  top: 0.08em !important;

  width: 4px !important;
  height: 1.18em !important;

  background: var(--green) !important;
  border-radius: 4px !important;
}

#slots-panel .gm-category-intro,
#live-casino-panel .gm-category-intro,
#games-panel .gm-category-intro {
  max-width: none !important;

  margin: 0 0 9px !important;

  font-size: 15px !important;
  line-height: 1.55 !important;
}

/* =====================================================
   GRIDS
===================================================== */

/* Pokies and Live Casino: 6 in row */
#slots-panel .gm-grid,
#live-casino-panel .gm-grid {
  position: relative !important;

  width: 100% !important;

  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;

  gap: 14px !important;

  margin: 0 !important;
  padding: 0 !important;

  align-items: start !important;
}

/* Games: 5 in row */
#games-panel .gm-grid,
#games-panel .gm-grid--five {
  position: relative !important;

  width: 100% !important;

  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;

  gap: 16px !important;

  margin: 0 !important;
  padding: 0 !important;

  align-items: start !important;
}

/* Common card base */
#slots-panel .gm-game,
#live-casino-panel .gm-game,
#games-panel .gm-game {
  width: 100% !important;
  min-width: 0 !important;
}

#slots-panel .gm-game details,
#live-casino-panel .gm-game details,
#games-panel .gm-game details {
  position: static !important;

  width: 100% !important;

  overflow: visible !important;

  background: #08100c !important;

  border: 1px solid rgba(255, 255, 255, 0.11) !important;
  border-radius: 12px !important;

  transform: none !important;
}

#slots-panel .gm-game details:hover,
#live-casino-panel .gm-game details:hover,
#games-panel .gm-game details:hover {
  border-color: rgba(142, 232, 95, 0.45) !important;
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.30) !important;
}

#slots-panel .gm-game details[open],
#live-casino-panel .gm-game details[open],
#games-panel .gm-game details[open] {
  border-color: rgba(142, 232, 95, 0.70) !important;
  box-shadow: 0 0 0 1px rgba(142, 232, 95, 0.18) !important;
}

#slots-panel .gm-game summary,
#live-casino-panel .gm-game summary,
#games-panel .gm-game summary {
  display: flex !important;
  flex-direction: column !important;

  width: 100% !important;

  padding: 0 !important;

  overflow: hidden !important;

  list-style: none !important;
  cursor: pointer !important;

  border-radius: 11px !important;
}

#slots-panel .gm-game summary::-webkit-details-marker,
#live-casino-panel .gm-game summary::-webkit-details-marker,
#games-panel .gm-game summary::-webkit-details-marker {
  display: none !important;
}

#slots-panel .gm-game summary::marker,
#live-casino-panel .gm-game summary::marker,
#games-panel .gm-game summary::marker {
  display: none !important;
}

/* Pokies and Live images: horizontal banners */
#slots-panel .gm-game summary img,
#live-casino-panel .gm-game summary img {
  display: block !important;

  width: 100% !important;
  height: 145px !important;

  object-fit: cover !important;
  object-position: center center !important;

  background: #08100c !important;

  border-radius: 11px 11px 0 0 !important;
}

/* Games images: vertical posters */
#games-panel .gm-game summary img {
  display: block !important;

  width: 100% !important;
  height: 255px !important;

  object-fit: cover !important;
  object-position: center center !important;

  background: #08100c !important;

  border-radius: 11px 11px 0 0 !important;
}

/* Card text */
#slots-panel .gm-card-copy,
#live-casino-panel .gm-card-copy,
#games-panel .gm-card-copy {
  position: relative !important;

  display: block !important;

  min-height: 58px !important;

  padding: 10px 34px 10px 12px !important;

  background: #08100c !important;

  box-sizing: border-box !important;
}

#slots-panel .gm-name,
#live-casino-panel .gm-name,
#games-panel .gm-name {
  display: block !important;

  color: #ffffff !important;

  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1.25 !important;
}

#slots-panel .gm-hint,
#live-casino-panel .gm-hint,
#games-panel .gm-hint {
  display: block !important;

  margin-top: 5px !important;

  color: var(--green) !important;

  font-size: 11px !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;
}

#slots-panel .gm-card-copy::after,
#live-casino-panel .gm-card-copy::after,
#games-panel .gm-card-copy::after {
  content: "+" !important;

  position: absolute !important;

  right: 12px !important;
  top: 50% !important;

  transform: translateY(-50%) !important;

  color: var(--green) !important;

  font-size: 20px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
}

#slots-panel .gm-game details[open] .gm-card-copy::after,
#live-casino-panel .gm-game details[open] .gm-card-copy::after,
#games-panel .gm-game details[open] .gm-card-copy::after {
  content: "−" !important;
}

/* =====================================================
   OPEN DESCRIPTION
===================================================== */

#slots-panel .gm-description,
#live-casino-panel .gm-description,
#games-panel .gm-description {
  display: none !important;
}

#slots-panel .gm-grid:has(.gm-game details[open]),
#live-casino-panel .gm-grid:has(.gm-game details[open]),
#games-panel .gm-grid:has(.gm-game details[open]),
#games-panel .gm-grid--five:has(.gm-game details[open]) {
  padding-bottom: 300px !important;
}

#slots-panel .gm-game details[open] > .gm-description,
#live-casino-panel .gm-game details[open] > .gm-description,
#games-panel .gm-game details[open] > .gm-description {
  position: absolute !important;

  left: 0 !important;
  right: 0 !important;

  top: calc(100% - 280px) !important;

  display: block !important;

  width: 100% !important;
  min-height: 260px !important;

  padding: 24px 26px !important;

  background:
    linear-gradient(
      180deg,
      rgba(11, 18, 14, 0.99),
      rgba(6, 11, 9, 0.99)
    ) !important;

  border: 1px solid rgba(142, 232, 95, 0.44) !important;
  border-radius: 14px !important;

  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.34) !important;

  z-index: 50 !important;

  box-sizing: border-box !important;
}

#slots-panel .gm-description dl,
#live-casino-panel .gm-description dl,
#games-panel .gm-description dl {
  display: grid !important;

  grid-template-columns:
    minmax(140px, 0.75fr)
    minmax(0, 1.15fr)
    minmax(0, 1.15fr)
    minmax(0, 1.35fr) !important;

  gap: 0 !important;

  width: 100% !important;

  margin: 0 !important;
}

#slots-panel .gm-rule,
#live-casino-panel .gm-rule,
#games-panel .gm-rule {
  min-width: 0 !important;

  padding: 0 20px !important;

  border-right: 1px solid rgba(255, 255, 255, 0.08) !important;

  box-sizing: border-box !important;
}

#slots-panel .gm-rule:first-child,
#live-casino-panel .gm-rule:first-child,
#games-panel .gm-rule:first-child {
  padding-left: 0 !important;
}

#slots-panel .gm-rule:last-child,
#live-casino-panel .gm-rule:last-child,
#games-panel .gm-rule:last-child {
  padding-right: 0 !important;
  border-right: 0 !important;
}

#slots-panel .gm-rule dt,
#live-casino-panel .gm-rule dt,
#games-panel .gm-rule dt {
  margin: 0 0 9px !important;

  color: var(--gold) !important;

  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;

  letter-spacing: 0.6px !important;
  text-transform: uppercase !important;
}

#slots-panel .gm-rule dd,
#live-casino-panel .gm-rule dd,
#games-panel .gm-rule dd {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.80) !important;

  font-size: 13px !important;
  line-height: 1.62 !important;
}

/* =====================================================
   RESPONSIVE
===================================================== */

@media (max-width: 1400px) {

  #slots-panel:not([hidden]),
  #live-casino-panel:not([hidden]),
  #games-panel:not([hidden]) {
    grid-template-columns: 250px minmax(0, 1fr) !important;
    column-gap: 26px !important;
  }

  #slots-panel .gm-grid,
  #live-casino-panel .gm-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }

  #games-panel .gm-grid,
  #games-panel .gm-grid--five {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }

  #games-panel .gm-game summary img {
    height: 240px !important;
  }

}

@media (max-width: 1180px) {

  #slots-panel:not([hidden]),
  #live-casino-panel:not([hidden]),
  #games-panel:not([hidden]) {
    display: block !important;
  }

  #slots-panel > .gm-section-head,
  #live-casino-panel > .gm-section-head,
  #games-panel > .gm-section-head {
    display: block !important;
  }

  #slots-panel > .gm-section-head h3,
  #live-casino-panel > .gm-section-head h3,
  #games-panel > .gm-section-head h3 {
    margin-bottom: 16px !important;
  }

  #slots-panel > .gm-category-switcher,
  #live-casino-panel > .gm-category-switcher,
  #games-panel > .gm-category-switcher {
    position: static !important;

    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

    margin: 0 0 28px !important;
  }

  #slots-panel > .gm-category-switcher::before,
  #live-casino-panel > .gm-category-switcher::before,
  #games-panel > .gm-category-switcher::before {
    grid-column: 1 / -1 !important;
  }

  #slots-panel .gm-grid,
  #live-casino-panel .gm-grid,
  #games-panel .gm-grid,
  #games-panel .gm-grid--five {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  #slots-panel .gm-description dl,
  #live-casino-panel .gm-description dl,
  #games-panel .gm-description dl {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    row-gap: 22px !important;
  }

  #slots-panel .gm-rule:nth-child(2),
  #live-casino-panel .gm-rule:nth-child(2),
  #games-panel .gm-rule:nth-child(2) {
    border-right: 0 !important;
  }

  #slots-panel .gm-rule:nth-child(3),
  #live-casino-panel .gm-rule:nth-child(3),
  #games-panel .gm-rule:nth-child(3) {
    padding-left: 0 !important;
  }

  #slots-panel .gm-grid:has(.gm-game details[open]),
  #live-casino-panel .gm-grid:has(.gm-game details[open]),
  #games-panel .gm-grid:has(.gm-game details[open]),
  #games-panel .gm-grid--five:has(.gm-game details[open]) {
    padding-bottom: 380px !important;
  }

  #slots-panel .gm-game details[open] > .gm-description,
  #live-casino-panel .gm-game details[open] > .gm-description,
  #games-panel .gm-game details[open] > .gm-description {
    top: calc(100% - 360px) !important;
    min-height: 340px !important;
  }

}

@media (max-width: 820px) {

  .gm-library {
    width: 100% !important;

    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .gm-main-switcher {
    grid-template-columns: 1fr !important;
    max-width: none !important;
  }

  #slots-panel > .gm-category-switcher,
  #live-casino-panel > .gm-category-switcher,
  #games-panel > .gm-category-switcher {
    grid-template-columns: 1fr !important;
  }

  #slots-panel .gm-grid,
  #live-casino-panel .gm-grid,
  #games-panel .gm-grid,
  #games-panel .gm-grid--five {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #slots-panel .gm-game summary img,
  #live-casino-panel .gm-game summary img {
    height: 145px !important;
  }

  #games-panel .gm-game summary img {
    height: 235px !important;
  }

  #slots-panel .gm-description dl,
  #live-casino-panel .gm-description dl,
  #games-panel .gm-description dl {
    grid-template-columns: 1fr !important;
  }

  #slots-panel .gm-rule,
  #live-casino-panel .gm-rule,
  #games-panel .gm-rule,
  #slots-panel .gm-rule:first-child,
  #live-casino-panel .gm-rule:first-child,
  #games-panel .gm-rule:first-child,
  #slots-panel .gm-rule:nth-child(2),
  #live-casino-panel .gm-rule:nth-child(2),
  #games-panel .gm-rule:nth-child(2),
  #slots-panel .gm-rule:nth-child(3),
  #live-casino-panel .gm-rule:nth-child(3),
  #games-panel .gm-rule:nth-child(3),
  #slots-panel .gm-rule:last-child,
  #live-casino-panel .gm-rule:last-child,
  #games-panel .gm-rule:last-child {
    padding: 14px 0 !important;

    border-right: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
  }

  #slots-panel .gm-rule:last-child,
  #live-casino-panel .gm-rule:last-child,
  #games-panel .gm-rule:last-child {
    border-bottom: 0 !important;
  }

  #slots-panel .gm-grid:has(.gm-game details[open]),
  #live-casino-panel .gm-grid:has(.gm-game details[open]),
  #games-panel .gm-grid:has(.gm-game details[open]),
  #games-panel .gm-grid--five:has(.gm-game details[open]) {
    padding-bottom: 690px !important;
  }

  #slots-panel .gm-game details[open] > .gm-description,
  #live-casino-panel .gm-game details[open] > .gm-description,
  #games-panel .gm-game details[open] > .gm-description {
    top: calc(100% - 670px) !important;
    min-height: 650px !important;
    padding: 20px !important;
  }

}

@media (max-width: 480px) {

  #slots-panel .gm-grid,
  #live-casino-panel .gm-grid,
  #games-panel .gm-grid,
  #games-panel .gm-grid--five {
    grid-template-columns: 1fr !important;
  }

  #games-panel .gm-game summary img {
    height: auto !important;
    aspect-ratio: 2 / 3 !important;
  }

}

/* =====================================================
   END 28MARS — GAME CATALOGUE UNIFIED LAYOUT V3
===================================================== */

/* =====================================================
   28MARS — BONUSES SECTION V2
   CSS ONLY — INSERT AT THE VERY END OF style.css
===================================================== */

.mars-bonuses {
  width: min(1780px, calc(100vw - 56px)) !important;
  max-width: none !important;

  margin: 90px auto 0 !important;
  padding: 0 28px !important;

  color: #ffffff !important;
}

.mars-bonuses * {
  box-sizing: border-box !important;
}

.mars-bonuses-head {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.7fr) minmax(0, 1.3fr) !important;
  gap: 46px !important;

  align-items: start !important;

  margin-bottom: 24px !important;
  padding: 34px !important;

  background:
    linear-gradient(
      135deg,
      rgba(10, 23, 14, 0.97),
      rgba(5, 11, 8, 0.97)
    ) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 24px !important;

  box-shadow: 0 24px 54px rgba(0, 0, 0, 0.24) !important;
}

.mars-bonuses-kicker {
  margin: 0 0 12px !important;

  color: var(--gold) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  letter-spacing: 4px !important;
  text-transform: uppercase !important;
}

.mars-bonuses-title-block h2 {
  margin: 0 !important;

  font-size: clamp(42px, 4vw, 68px) !important;
  font-weight: 950 !important;
  line-height: 1.03 !important;
  letter-spacing: -1.5px !important;
}

.mars-bonuses-intro p {
  max-width: none !important;

  margin: 0 0 12px !important;

  color: rgba(255, 255, 255, 0.78) !important;

  font-size: 16px !important;
  line-height: 1.66 !important;
}

.mars-bonuses-intro p:last-child {
  margin-bottom: 0 !important;
}

/* Highlights */

.mars-bonus-highlights {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  margin-bottom: 22px !important;
}

.mars-bonus-highlight {
  min-height: 170px !important;

  padding: 24px !important;

  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;

  background:
    linear-gradient(
      180deg,
      rgba(9, 18, 13, 0.98),
      rgba(4, 10, 7, 0.98)
    ) !important;

  border: 1px solid rgba(255, 255, 255, 0.11) !important;
  border-radius: 20px !important;

  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.22) !important;
}

.mars-bonus-highlight--main {
  background:
    linear-gradient(
      135deg,
      rgba(142, 232, 95, 0.98),
      rgba(103, 214, 71, 0.98)
    ) !important;

  color: #061008 !important;
}

.mars-bonus-highlight span {
  margin-bottom: 9px !important;

  color: inherit !important;

  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  letter-spacing: 2px !important;
  text-transform: uppercase !important;

  opacity: 0.78 !important;
}

.mars-bonus-highlight strong {
  display: block !important;

  margin-bottom: 7px !important;

  color: inherit !important;

  font-size: clamp(34px, 3.4vw, 58px) !important;
  font-weight: 950 !important;
  line-height: 0.95 !important;
  letter-spacing: -1px !important;
}

.mars-bonus-highlight p {
  margin: 0 !important;

  color: inherit !important;

  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;

  opacity: 0.9 !important;
}

/* Bonus cards */

.mars-bonus-layout {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  margin-bottom: 24px !important;
}

.mars-bonus-card {
  min-height: 360px !important;

  padding: 24px !important;

  background:
    linear-gradient(
      180deg,
      rgba(8, 17, 12, 0.98),
      rgba(4, 10, 7, 0.98)
    ) !important;

  border: 1px solid rgba(255, 255, 255, 0.11) !important;
  border-radius: 20px !important;

  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.22) !important;
}

.mars-bonus-card--welcome {
  border-color: rgba(142, 232, 95, 0.50) !important;

  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.24),
    inset 0 0 0 1px rgba(142, 232, 95, 0.10) !important;
}

.mars-bonus-card--wide {
  grid-column: span 2 !important;
}

.mars-bonus-label {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 14px !important;

  margin-bottom: 18px !important;
}

.mars-bonus-label span {
  color: var(--gold) !important;

  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;

  letter-spacing: 1.7px !important;
  text-transform: uppercase !important;
}

.mars-bonus-label strong {
  color: var(--green) !important;

  font-size: 32px !important;
  font-weight: 950 !important;
  line-height: 0.95 !important;

  white-space: nowrap !important;
}

.mars-bonus-card h3 {
  margin: 0 0 13px !important;

  color: #ffffff !important;

  font-size: 24px !important;
  font-weight: 900 !important;
  line-height: 1.12 !important;
  letter-spacing: -0.4px !important;
}

.mars-bonus-card p {
  margin: 0 0 16px !important;

  color: rgba(255, 255, 255, 0.76) !important;

  font-size: 14px !important;
  line-height: 1.62 !important;
}

.mars-bonus-note {
  margin-top: 16px !important;

  color: rgba(255, 255, 255, 0.66) !important;

  font-size: 13px !important;
}

.mars-bonus-list {
  display: grid !important;
  gap: 8px !important;

  margin: 0 !important;
  padding: 0 !important;

  list-style: none !important;
}

.mars-bonus-list li {
  position: relative !important;

  padding-left: 18px !important;

  color: rgba(255, 255, 255, 0.82) !important;

  font-size: 13px !important;
  line-height: 1.44 !important;
}

.mars-bonus-list li::before {
  content: "" !important;

  position: absolute !important;
  left: 0 !important;
  top: 0.55em !important;

  width: 7px !important;
  height: 7px !important;

  background: var(--green) !important;
  border-radius: 50% !important;
}

/* Welcome facts */

.mars-bonus-facts {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

.mars-bonus-facts p {
  margin: 0 !important;
  padding: 13px !important;

  background: rgba(255, 255, 255, 0.045) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 12px !important;
}

.mars-bonus-facts span {
  display: block !important;

  margin-bottom: 6px !important;

  color: rgba(255, 255, 255, 0.62) !important;

  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

.mars-bonus-facts strong {
  display: block !important;

  color: var(--green) !important;

  font-size: 20px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
}

/* Achievement grid */

.mars-achievement-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;

  margin-top: 18px !important;
}

.mars-achievement-grid div {
  padding: 15px !important;

  background: rgba(255, 255, 255, 0.045) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 14px !important;
}

.mars-achievement-grid span {
  display: block !important;

  margin-bottom: 8px !important;

  color: rgba(255, 255, 255, 0.62) !important;

  font-size: 11px !important;
  font-weight: 800 !important;
}

.mars-achievement-grid strong {
  display: block !important;

  margin-bottom: 7px !important;

  color: #ffffff !important;

  font-size: 22px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
}

.mars-achievement-grid em {
  display: block !important;

  color: var(--green) !important;

  font-size: 13px !important;
  font-style: normal !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;
}

/* VIP programme */

.mars-vip-programme {
  margin-bottom: 24px !important;
  padding: 30px !important;

  background:
    linear-gradient(
      135deg,
      rgba(10, 22, 14, 0.97),
      rgba(5, 11, 8, 0.97)
    ) !important;

  border: 1px solid rgba(142, 232, 95, 0.25) !important;
  border-radius: 24px !important;

  box-shadow: 0 22px 46px rgba(0, 0, 0, 0.22) !important;
}

.mars-vip-copy {
  max-width: 1160px !important;
  margin-bottom: 22px !important;
}

.mars-vip-copy h3,
.mars-bonus-flow-copy h3 {
  margin: 0 0 12px !important;

  color: #ffffff !important;

  font-size: clamp(30px, 2.6vw, 44px) !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.7px !important;
}

.mars-vip-copy p,
.mars-bonus-flow-copy p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.76) !important;

  font-size: 15px !important;
  line-height: 1.62 !important;
}

.mars-vip-cards {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.mars-vip-cards article {
  min-height: 168px !important;

  padding: 18px !important;

  background: rgba(255, 255, 255, 0.045) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 16px !important;
}

.mars-vip-cards span {
  display: block !important;

  margin-bottom: 12px !important;

  color: var(--gold) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
}

.mars-vip-cards strong {
  display: block !important;

  margin-bottom: 6px !important;

  color: #ffffff !important;

  font-size: 24px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
}

.mars-vip-cards p {
  margin: 0 0 10px !important;

  color: rgba(255, 255, 255, 0.62) !important;

  font-size: 12px !important;
  line-height: 1.3 !important;
}

.mars-vip-cards em {
  display: block !important;

  color: var(--green) !important;

  font-size: 13px !important;
  font-style: normal !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
}

.mars-vip-small {
  margin: 16px 0 0 !important;

  color: rgba(255, 255, 255, 0.66) !important;

  font-size: 13px !important;
  line-height: 1.55 !important;
}

/* Bonus flow */

.mars-bonus-flow {
  display: grid !important;
  grid-template-columns: minmax(310px, 0.55fr) minmax(0, 1.45fr) !important;
  gap: 28px !important;

  margin-bottom: 24px !important;
  padding: 30px !important;

  background: rgba(6, 13, 9, 0.96) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 24px !important;
}

.mars-bonus-flow-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.mars-bonus-flow-grid article {
  min-height: 190px !important;

  padding: 18px !important;

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.055),
      rgba(255, 255, 255, 0.025)
    ) !important;

  border: 1px solid rgba(255, 255, 255, 0.09) !important;
  border-radius: 16px !important;
}

.mars-bonus-flow-grid strong {
  display: block !important;

  margin-bottom: 10px !important;

  color: #ffffff !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

.mars-bonus-flow-grid p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.72) !important;

  font-size: 13px !important;
  line-height: 1.52 !important;
}

/* Hidden details */

.mars-bonus-more {
  margin: 0 !important;

  background: rgba(6, 13, 9, 0.96) !important;

  border: 1px solid rgba(142, 232, 95, 0.24) !important;
  border-radius: 20px !important;

  overflow: hidden !important;
}

.mars-bonus-more summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;

  padding: 20px 24px !important;

  color: var(--green) !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;

  cursor: pointer !important;
  list-style: none !important;
}

.mars-bonus-more summary::-webkit-details-marker {
  display: none !important;
}

.mars-bonus-more summary::marker {
  display: none !important;
}

.mars-bonus-more[open] summary span {
  transform: rotate(45deg) !important;
}

.mars-bonus-more-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  padding: 0 24px 24px !important;
}

.mars-bonus-more-grid article {
  padding: 20px !important;

  background: rgba(255, 255, 255, 0.04) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 14px !important;
}

.mars-bonus-more-grid h3 {
  margin: 0 0 10px !important;

  color: #ffffff !important;

  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

.mars-bonus-more-grid p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.74) !important;

  font-size: 14px !important;
  line-height: 1.6 !important;
}

/* Responsive */

@media (max-width: 1360px) {

  .mars-bonus-layout {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .mars-bonus-card--wide {
    grid-column: span 3 !important;
  }

  .mars-bonus-flow-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .mars-vip-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

}

@media (max-width: 1020px) {

  .mars-bonuses {
    width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .mars-bonuses-head,
  .mars-bonus-flow {
    grid-template-columns: 1fr !important;
  }

  .mars-bonus-highlights,
  .mars-bonus-layout {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .mars-bonus-card--wide {
    grid-column: span 2 !important;
  }

  .mars-achievement-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .mars-bonus-more-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

}

@media (max-width: 680px) {

  .mars-bonuses-head,
  .mars-vip-programme,
  .mars-bonus-flow {
    padding: 22px !important;
  }

  .mars-bonus-highlights,
  .mars-bonus-layout,
  .mars-achievement-grid,
  .mars-vip-cards,
  .mars-bonus-flow-grid,
  .mars-bonus-more-grid {
    grid-template-columns: 1fr !important;
  }

  .mars-bonus-card--wide {
    grid-column: span 1 !important;
  }

  .mars-bonus-card {
    min-height: auto !important;
  }

}

/* =====================================================
   END 28MARS — BONUSES SECTION V2
===================================================== */
/* =====================================================
   28MARS — BONUSES FINAL BALANCE FIX
   Fix lonely last referral card
===================================================== */

/* Last bonus card becomes full-width horizontal block */
.mars-bonus-layout .mars-bonus-card:last-child {
  grid-column: 1 / -1 !important;

  min-height: auto !important;

  display: grid !important;
  grid-template-columns: 280px minmax(0, 1fr) minmax(320px, 0.75fr) !important;
  column-gap: 28px !important;

  align-items: start !important;

  padding: 28px !important;

  background:
    linear-gradient(
      135deg,
      rgba(8, 18, 12, 0.98),
      rgba(4, 10, 7, 0.98)
    ) !important;

  border-color: rgba(142, 232, 95, 0.24) !important;
}

/* Referral label stays left */
.mars-bonus-layout .mars-bonus-card:last-child .mars-bonus-label {
  grid-column: 1 !important;

  display: block !important;

  margin: 0 !important;
}

.mars-bonus-layout .mars-bonus-card:last-child .mars-bonus-label span {
  display: block !important;
  margin-bottom: 14px !important;
}

.mars-bonus-layout .mars-bonus-card:last-child .mars-bonus-label strong {
  display: block !important;

  color: var(--green) !important;

  font-size: clamp(34px, 3vw, 48px) !important;
  line-height: 0.95 !important;
  white-space: normal !important;
}

/* Referral title and text in the middle */
.mars-bonus-layout .mars-bonus-card:last-child h3 {
  grid-column: 2 !important;

  margin: 0 0 12px !important;

  font-size: clamp(26px, 2.2vw, 36px) !important;
}

.mars-bonus-layout .mars-bonus-card:last-child > p {
  grid-column: 2 !important;

  margin: 0 !important;

  max-width: 760px !important;
}

/* Referral bullet list on the right */
.mars-bonus-layout .mars-bonus-card:last-child .mars-bonus-list {
  grid-column: 3 !important;
  grid-row: 1 / span 3 !important;

  align-self: stretch !important;

  padding: 18px !important;

  background: rgba(255, 255, 255, 0.045) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 14px !important;
}

/* Achievement card remains balanced */
.mars-bonus-card--wide {
  grid-column: span 2 !important;
}

/* Better spacing between bonus blocks */
.mars-bonus-layout {
  align-items: stretch !important;
}

/* Tablet */
@media (max-width: 1100px) {

  .mars-bonus-layout .mars-bonus-card:last-child {
    grid-template-columns: 1fr !important;
    row-gap: 16px !important;
  }

  .mars-bonus-layout .mars-bonus-card:last-child .mars-bonus-label,
  .mars-bonus-layout .mars-bonus-card:last-child h3,
  .mars-bonus-layout .mars-bonus-card:last-child > p,
  .mars-bonus-layout .mars-bonus-card:last-child .mars-bonus-list {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  .mars-bonus-layout .mars-bonus-card:last-child .mars-bonus-list {
    padding: 16px !important;
  }

}

/* Mobile */
@media (max-width: 680px) {

  .mars-bonus-layout .mars-bonus-card:last-child {
    grid-column: span 1 !important;
    padding: 22px !important;
  }

}
/* =====================================================
   28MARS — VIP PROGRAMME SECTION
   CSS ONLY — INSERT AT THE VERY END OF style.css
===================================================== */

.mars-vip {
  width: min(1780px, calc(100vw - 56px)) !important;
  max-width: none !important;

  margin: 80px auto 0 !important;
  padding: 0 28px !important;

  color: #ffffff !important;
}

.mars-vip * {
  box-sizing: border-box !important;
}

.mars-vip-hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1.25fr) minmax(340px, 0.75fr) !important;
  gap: 28px !important;

  align-items: stretch !important;

  margin-bottom: 22px !important;
  padding: 34px !important;

  background:
    radial-gradient(circle at 82% 20%, rgba(142, 232, 95, 0.18), transparent 34%),
    linear-gradient(135deg, rgba(10, 22, 14, 0.97), rgba(5, 11, 8, 0.97)) !important;

  border: 1px solid rgba(142, 232, 95, 0.20) !important;
  border-radius: 26px !important;

  box-shadow: 0 26px 56px rgba(0, 0, 0, 0.26) !important;

  overflow: hidden !important;
}

.mars-vip-kicker {
  margin: 0 0 12px !important;

  color: var(--gold) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  letter-spacing: 4px !important;
  text-transform: uppercase !important;
}

.mars-vip-copy h2 {
  margin: 0 0 18px !important;

  color: #ffffff !important;

  font-size: clamp(42px, 4.2vw, 72px) !important;
  font-weight: 950 !important;
  line-height: 1.03 !important;
  letter-spacing: -1.6px !important;
}

.mars-vip-copy p {
  max-width: 1120px !important;

  margin: 0 0 12px !important;

  color: rgba(255, 255, 255, 0.78) !important;

  font-size: 16px !important;
  line-height: 1.66 !important;
}

.mars-vip-copy p:last-child {
  margin-bottom: 0 !important;
}

/* Animated trophy */

.mars-vip-trophy {
  position: relative !important;

  min-height: 320px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.02)) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 22px !important;

  overflow: hidden !important;
}

.mars-vip-trophy-orbit {
  position: absolute !important;

  width: 230px !important;
  height: 230px !important;

  border: 1px solid rgba(142, 232, 95, 0.25) !important;
  border-radius: 50% !important;

  animation: marsVipOrbit 9s linear infinite !important;
}

.mars-vip-trophy-orbit::before,
.mars-vip-trophy-orbit::after {
  content: "" !important;

  position: absolute !important;

  width: 10px !important;
  height: 10px !important;

  background: var(--green) !important;
  border-radius: 50% !important;

  box-shadow: 0 0 18px rgba(142, 232, 95, 0.85) !important;
}

.mars-vip-trophy-orbit::before {
  top: 18px !important;
  left: 36px !important;
}

.mars-vip-trophy-orbit::after {
  right: 24px !important;
  bottom: 42px !important;
}

.mars-vip-trophy-cup {
  position: relative !important;

  width: 180px !important;
  height: 210px !important;

  animation: marsVipFloat 3.8s ease-in-out infinite !important;
}

.mars-vip-cup-bowl {
  position: absolute !important;

  left: 35px !important;
  top: 28px !important;

  width: 110px !important;
  height: 86px !important;

  background:
    linear-gradient(135deg, #f7e58b, #d79f2f 45%, #fff4a8 70%, #b97818) !important;

  border-radius: 14px 14px 48px 48px !important;

  box-shadow:
    inset 0 0 0 2px rgba(255, 255, 255, 0.22),
    0 22px 42px rgba(0, 0, 0, 0.30),
    0 0 32px rgba(215, 159, 47, 0.35) !important;
}

.mars-vip-cup-left,
.mars-vip-cup-right {
  position: absolute !important;

  top: 46px !important;

  width: 48px !important;
  height: 54px !important;

  border: 11px solid #d79f2f !important;
  border-radius: 50% !important;
}

.mars-vip-cup-left {
  left: 2px !important;
}

.mars-vip-cup-right {
  right: 2px !important;
}

.mars-vip-cup-stem {
  position: absolute !important;

  left: 76px !important;
  top: 112px !important;

  width: 28px !important;
  height: 56px !important;

  background: linear-gradient(180deg, #f7e58b, #b97818) !important;

  border-radius: 10px !important;
}

.mars-vip-cup-base {
  position: absolute !important;

  left: 45px !important;
  bottom: 18px !important;

  width: 90px !important;
  height: 26px !important;

  background: linear-gradient(135deg, #f7e58b, #b97818) !important;

  border-radius: 16px !important;
}

.mars-vip-star {
  position: absolute !important;

  color: var(--green) !important;

  font-size: 22px !important;

  text-shadow: 0 0 18px rgba(142, 232, 95, 0.85) !important;

  animation: marsVipSpark 2.4s ease-in-out infinite !important;
}

.mars-vip-star-a {
  top: 48px !important;
  right: 70px !important;
}

.mars-vip-star-b {
  left: 56px !important;
  bottom: 72px !important;

  animation-delay: 0.6s !important;
}

.mars-vip-star-c {
  right: 110px !important;
  bottom: 46px !important;

  animation-delay: 1.1s !important;
}

@keyframes marsVipOrbit {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

@keyframes marsVipFloat {
  0%, 100% {
    transform: translateY(0);
  }

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

@keyframes marsVipSpark {
  0%, 100% {
    opacity: 0.45;
    transform: scale(0.9);
  }

  50% {
    opacity: 1;
    transform: scale(1.18);
  }
}

/* Summary cards */

.mars-vip-summary {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  margin-bottom: 22px !important;
}

.mars-vip-summary article {
  min-height: 150px !important;

  padding: 22px !important;

  background:
    linear-gradient(180deg, rgba(8, 17, 12, 0.98), rgba(4, 10, 7, 0.98)) !important;

  border: 1px solid rgba(255, 255, 255, 0.11) !important;
  border-radius: 20px !important;

  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.22) !important;
}

.mars-vip-summary span,
.mars-vip-level span {
  display: block !important;

  margin-bottom: 10px !important;

  color: var(--gold) !important;

  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
}

.mars-vip-summary strong {
  display: block !important;

  margin-bottom: 8px !important;

  color: var(--green) !important;

  font-size: clamp(34px, 3.4vw, 58px) !important;
  font-weight: 950 !important;
  line-height: 0.95 !important;
}

.mars-vip-summary p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.74) !important;

  font-size: 14px !important;
  line-height: 1.45 !important;
}

/* VIP levels */

.mars-vip-levels {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 16px !important;

  margin-bottom: 24px !important;
}

.mars-vip-level {
  min-height: 260px !important;

  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;

  padding: 22px !important;

  background:
    linear-gradient(180deg, rgba(8, 17, 12, 0.98), rgba(4, 10, 7, 0.98)) !important;

  border: 1px solid rgba(255, 255, 255, 0.11) !important;
  border-radius: 20px !important;

  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.22) !important;
}

.mars-vip-level--diamond {
  border-color: rgba(142, 232, 95, 0.55) !important;

  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.25),
    inset 0 0 0 1px rgba(142, 232, 95, 0.12) !important;
}

.mars-vip-level strong {
  display: block !important;

  margin-bottom: 8px !important;

  color: #ffffff !important;

  font-size: 30px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
}

.mars-vip-level p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.62) !important;

  font-size: 13px !important;
  line-height: 1.35 !important;
}

.mars-vip-level ul {
  display: grid !important;
  gap: 8px !important;

  margin: 20px 0 0 !important;
  padding: 0 !important;

  list-style: none !important;
}

.mars-vip-level li {
  position: relative !important;

  padding-left: 17px !important;

  color: rgba(255, 255, 255, 0.82) !important;

  font-size: 13px !important;
  line-height: 1.4 !important;
}

.mars-vip-level li::before {
  content: "" !important;

  position: absolute !important;
  left: 0 !important;
  top: 0.52em !important;

  width: 7px !important;
  height: 7px !important;

  background: var(--green) !important;
  border-radius: 50% !important;
}

/* Path block */

.mars-vip-path {
  display: grid !important;
  grid-template-columns: minmax(320px, 0.55fr) minmax(0, 1.45fr) !important;
  gap: 28px !important;

  margin-bottom: 24px !important;
  padding: 30px !important;

  background: rgba(6, 13, 9, 0.96) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 24px !important;
}

.mars-vip-path-copy h3 {
  margin: 0 0 12px !important;

  color: #ffffff !important;

  font-size: clamp(30px, 2.6vw, 44px) !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.7px !important;
}

.mars-vip-path-copy p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.76) !important;

  font-size: 15px !important;
  line-height: 1.62 !important;
}

.mars-vip-path-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.mars-vip-path-grid article {
  min-height: 185px !important;

  padding: 18px !important;

  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.025)) !important;

  border: 1px solid rgba(255, 255, 255, 0.09) !important;
  border-radius: 16px !important;
}

.mars-vip-path-grid strong {
  display: block !important;

  margin-bottom: 10px !important;

  color: #ffffff !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

.mars-vip-path-grid p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.72) !important;

  font-size: 13px !important;
  line-height: 1.52 !important;
}

/* Hidden details */

.mars-vip-more {
  margin: 0 !important;

  background: rgba(6, 13, 9, 0.96) !important;

  border: 1px solid rgba(142, 232, 95, 0.24) !important;
  border-radius: 20px !important;

  overflow: hidden !important;
}

.mars-vip-more summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;

  padding: 20px 24px !important;

  color: var(--green) !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;

  cursor: pointer !important;
  list-style: none !important;
}

.mars-vip-more summary::-webkit-details-marker {
  display: none !important;
}

.mars-vip-more summary::marker {
  display: none !important;
}

.mars-vip-more[open] summary span {
  transform: rotate(45deg) !important;
}

.mars-vip-more-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  padding: 0 24px 24px !important;
}

.mars-vip-more-grid article {
  padding: 20px !important;

  background: rgba(255, 255, 255, 0.04) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 14px !important;
}

.mars-vip-more-grid h3 {
  margin: 0 0 10px !important;

  color: #ffffff !important;

  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

.mars-vip-more-grid p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.74) !important;

  font-size: 14px !important;
  line-height: 1.6 !important;
}

/* Responsive */

@media (max-width: 1360px) {

  .mars-vip-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .mars-vip-levels {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .mars-vip-path-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .mars-vip-more-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

}

@media (max-width: 980px) {

  .mars-vip {
    width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .mars-vip-hero,
  .mars-vip-path {
    grid-template-columns: 1fr !important;
  }

  .mars-vip-trophy {
    min-height: 280px !important;
  }

}

@media (max-width: 680px) {

  .mars-vip-hero,
  .mars-vip-path {
    padding: 22px !important;
  }

  .mars-vip-summary,
  .mars-vip-levels,
  .mars-vip-path-grid,
  .mars-vip-more-grid {
    grid-template-columns: 1fr !important;
  }

  .mars-vip-level {
    min-height: auto !important;
  }

}

/* =====================================================
   END 28MARS — VIP PROGRAMME SECTION
===================================================== */
/* =====================================================
   28MARS — VIP SECTION REDESIGN V3
   Compact metallic tiers + no empty gaps
   INSERT AT THE VERY END OF style.css
===================================================== */

.mars-vip {
  width: min(1780px, calc(100vw - 56px)) !important;
  max-width: none !important;

  margin: 110px auto 0 !important;
  padding: 0 28px !important;

  color: #ffffff !important;
}

.mars-vip * {
  box-sizing: border-box !important;
}

/* Main VIP hero — softer, not just black */
.mars-vip-hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.65fr) !important;
  gap: 26px !important;

  align-items: stretch !important;

  margin-bottom: 22px !important;
  padding: 34px !important;

  background:
    radial-gradient(circle at 88% 18%, rgba(237, 205, 118, 0.20), transparent 34%),
    radial-gradient(circle at 12% 95%, rgba(142, 232, 95, 0.10), transparent 36%),
    linear-gradient(135deg, rgba(20, 23, 16, 0.98), rgba(8, 17, 12, 0.98)) !important;

  border: 1px solid rgba(237, 205, 118, 0.20) !important;
  border-radius: 28px !important;

  box-shadow:
    0 26px 60px rgba(0, 0, 0, 0.30),
    inset 0 0 0 1px rgba(255, 255, 255, 0.035) !important;

  overflow: hidden !important;
}

.mars-vip-kicker {
  margin: 0 0 12px !important;

  color: var(--gold) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  letter-spacing: 4px !important;
  text-transform: uppercase !important;
}

.mars-vip-copy h2 {
  max-width: 980px !important;

  margin: 0 0 18px !important;

  color: #ffffff !important;

  font-size: clamp(42px, 4vw, 70px) !important;
  font-weight: 950 !important;
  line-height: 1.03 !important;
  letter-spacing: -1.6px !important;
}

.mars-vip-copy p {
  max-width: 1160px !important;

  margin: 0 0 12px !important;

  color: rgba(255, 255, 255, 0.78) !important;

  font-size: 16px !important;
  line-height: 1.64 !important;
}

.mars-vip-copy p:last-child {
  margin-bottom: 0 !important;
}

/* Trophy panel */
.mars-vip-trophy {
  position: relative !important;

  min-height: 300px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  background:
    radial-gradient(circle at center, rgba(237, 205, 118, 0.12), transparent 58%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)) !important;

  border: 1px solid rgba(237, 205, 118, 0.18) !important;
  border-radius: 24px !important;

  overflow: hidden !important;
}

.mars-vip-trophy-orbit {
  position: absolute !important;

  width: 225px !important;
  height: 225px !important;

  border: 1px solid rgba(237, 205, 118, 0.32) !important;
  border-radius: 50% !important;

  animation: marsVipOrbit 10s linear infinite !important;
}

.mars-vip-trophy-orbit::before,
.mars-vip-trophy-orbit::after {
  content: "" !important;

  position: absolute !important;

  width: 10px !important;
  height: 10px !important;

  background: var(--green) !important;
  border-radius: 50% !important;

  box-shadow: 0 0 18px rgba(142, 232, 95, 0.85) !important;
}

.mars-vip-trophy-orbit::before {
  top: 20px !important;
  left: 38px !important;
}

.mars-vip-trophy-orbit::after {
  right: 26px !important;
  bottom: 42px !important;
}

.mars-vip-trophy-cup {
  position: relative !important;

  width: 178px !important;
  height: 205px !important;

  animation: marsVipFloat 3.8s ease-in-out infinite !important;
}

.mars-vip-cup-bowl {
  position: absolute !important;

  left: 34px !important;
  top: 28px !important;

  width: 110px !important;
  height: 84px !important;

  background:
    linear-gradient(135deg, #fff0a8, #d9a63a 42%, #fff7bc 66%, #b17618) !important;

  border-radius: 14px 14px 48px 48px !important;

  box-shadow:
    inset 0 0 0 2px rgba(255, 255, 255, 0.24),
    0 22px 42px rgba(0, 0, 0, 0.30),
    0 0 34px rgba(217, 166, 58, 0.38) !important;
}

.mars-vip-cup-left,
.mars-vip-cup-right {
  position: absolute !important;

  top: 46px !important;

  width: 48px !important;
  height: 54px !important;

  border: 11px solid #d9a63a !important;
  border-radius: 50% !important;
}

.mars-vip-cup-left {
  left: 2px !important;
}

.mars-vip-cup-right {
  right: 2px !important;
}

.mars-vip-cup-stem {
  position: absolute !important;

  left: 75px !important;
  top: 110px !important;

  width: 28px !important;
  height: 54px !important;

  background: linear-gradient(180deg, #fff0a8, #b17618) !important;

  border-radius: 10px !important;
}

.mars-vip-cup-base {
  position: absolute !important;

  left: 43px !important;
  bottom: 18px !important;

  width: 92px !important;
  height: 26px !important;

  background: linear-gradient(135deg, #fff0a8, #b17618) !important;

  border-radius: 16px !important;
}

.mars-vip-star {
  position: absolute !important;

  color: var(--green) !important;

  font-size: 22px !important;

  text-shadow: 0 0 18px rgba(142, 232, 95, 0.85) !important;

  animation: marsVipSpark 2.4s ease-in-out infinite !important;
}

.mars-vip-star-a {
  top: 48px !important;
  right: 70px !important;
}

.mars-vip-star-b {
  left: 56px !important;
  bottom: 72px !important;

  animation-delay: 0.6s !important;
}

.mars-vip-star-c {
  right: 110px !important;
  bottom: 46px !important;

  animation-delay: 1.1s !important;
}

/* Summary cards */
.mars-vip-summary {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  margin-bottom: 22px !important;
}

.mars-vip-summary article {
  min-height: 132px !important;

  padding: 22px !important;

  background:
    linear-gradient(145deg, rgba(18, 23, 17, 0.98), rgba(7, 15, 11, 0.98)) !important;

  border: 1px solid rgba(237, 205, 118, 0.14) !important;
  border-radius: 20px !important;

  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.22) !important;
}

.mars-vip-summary span,
.mars-vip-level span {
  display: block !important;

  margin-bottom: 10px !important;

  color: var(--gold) !important;

  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
}

.mars-vip-summary strong {
  display: block !important;

  margin-bottom: 7px !important;

  color: var(--green) !important;

  font-size: clamp(34px, 3.2vw, 54px) !important;
  font-weight: 950 !important;
  line-height: 0.95 !important;
}

.mars-vip-summary p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.72) !important;

  font-size: 14px !important;
  line-height: 1.42 !important;
}

/* =====================================================
   LEVEL CARDS — COLOURED BY TIER
===================================================== */

.mars-vip-levels {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 16px !important;

  margin-bottom: 26px !important;
}

.mars-vip-level {
  min-height: 0 !important;
  height: auto !important;

  display: grid !important;
  grid-template-rows: auto auto !important;
  gap: 26px !important;

  padding: 24px !important;

  border-radius: 22px !important;

  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.24),
    inset 0 0 0 1px rgba(255, 255, 255, 0.035) !important;

  overflow: hidden !important;
}

/* Bronze */
.mars-vip-level--bronze {
  background:
    radial-gradient(circle at 80% 0%, rgba(201, 122, 64, 0.20), transparent 42%),
    linear-gradient(145deg, rgba(38, 26, 18, 0.98), rgba(9, 15, 11, 0.98)) !important;

  border: 1px solid rgba(201, 122, 64, 0.35) !important;
}

/* Silver */
.mars-vip-level--silver {
  background:
    radial-gradient(circle at 80% 0%, rgba(210, 220, 224, 0.20), transparent 42%),
    linear-gradient(145deg, rgba(33, 38, 38, 0.98), rgba(8, 15, 12, 0.98)) !important;

  border: 1px solid rgba(210, 220, 224, 0.28) !important;
}

/* Gold */
.mars-vip-level--gold {
  background:
    radial-gradient(circle at 80% 0%, rgba(237, 205, 118, 0.24), transparent 42%),
    linear-gradient(145deg, rgba(48, 39, 15, 0.98), rgba(8, 15, 11, 0.98)) !important;

  border: 1px solid rgba(237, 205, 118, 0.36) !important;
}

/* Platinum */
.mars-vip-level--platinum {
  background:
    radial-gradient(circle at 80% 0%, rgba(185, 222, 229, 0.22), transparent 42%),
    linear-gradient(145deg, rgba(22, 40, 43, 0.98), rgba(7, 15, 12, 0.98)) !important;

  border: 1px solid rgba(185, 222, 229, 0.32) !important;
}

/* Diamond */
.mars-vip-level--diamond {
  background:
    radial-gradient(circle at 80% 0%, rgba(142, 232, 95, 0.22), transparent 42%),
    radial-gradient(circle at 20% 100%, rgba(185, 222, 229, 0.16), transparent 44%),
    linear-gradient(145deg, rgba(12, 38, 27, 0.98), rgba(5, 14, 10, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.55) !important;

  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.25),
    0 0 34px rgba(142, 232, 95, 0.10),
    inset 0 0 0 1px rgba(142, 232, 95, 0.14) !important;
}

.mars-vip-level strong {
  display: block !important;

  margin-bottom: 8px !important;

  color: #ffffff !important;

  font-size: clamp(28px, 2.2vw, 38px) !important;
  font-weight: 950 !important;
  line-height: 1.02 !important;
  letter-spacing: -0.7px !important;
}

.mars-vip-level p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.66) !important;

  font-size: 13px !important;
  line-height: 1.35 !important;
}

.mars-vip-level ul {
  display: grid !important;
  gap: 8px !important;

  margin: 0 !important;
  padding: 0 !important;

  list-style: none !important;
}

.mars-vip-level li {
  position: relative !important;

  padding-left: 17px !important;

  color: rgba(255, 255, 255, 0.84) !important;

  font-size: 13px !important;
  line-height: 1.42 !important;
}

.mars-vip-level li::before {
  content: "" !important;

  position: absolute !important;
  left: 0 !important;
  top: 0.52em !important;

  width: 7px !important;
  height: 7px !important;

  background: var(--green) !important;
  border-radius: 50% !important;
}

/* =====================================================
   VIP PATH — COMPACT, NO HUGE EMPTY SPACES
===================================================== */

.mars-vip-path {
  display: grid !important;
  grid-template-columns: minmax(330px, 0.56fr) minmax(0, 1.44fr) !important;
  gap: 24px !important;

  margin-bottom: 24px !important;
  padding: 28px !important;

  background:
    radial-gradient(circle at 0% 0%, rgba(237, 205, 118, 0.10), transparent 34%),
    linear-gradient(135deg, rgba(17, 22, 16, 0.98), rgba(6, 14, 10, 0.98)) !important;

  border: 1px solid rgba(237, 205, 118, 0.16) !important;
  border-radius: 24px !important;

  box-shadow: 0 20px 44px rgba(0, 0, 0, 0.22) !important;
}

.mars-vip-path-copy h3 {
  margin: 0 0 12px !important;

  color: #ffffff !important;

  font-size: clamp(30px, 2.6vw, 44px) !important;
  font-weight: 950 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.8px !important;
}

.mars-vip-path-copy p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.76) !important;

  font-size: 15px !important;
  line-height: 1.62 !important;
}

.mars-vip-path-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.mars-vip-path-grid article {
  min-height: 0 !important;
  height: auto !important;

  padding: 18px !important;

  background: rgba(255, 255, 255, 0.045) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 16px !important;
}

.mars-vip-path-grid strong {
  display: block !important;

  margin-bottom: 8px !important;

  color: #ffffff !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

.mars-vip-path-grid p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.72) !important;

  font-size: 13px !important;
  line-height: 1.5 !important;
}

/* Hidden VIP notes */
.mars-vip-more {
  margin: 0 !important;

  background:
    linear-gradient(135deg, rgba(17, 22, 16, 0.98), rgba(6, 14, 10, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.24) !important;
  border-radius: 20px !important;

  overflow: hidden !important;
}

.mars-vip-more summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;

  padding: 20px 24px !important;

  color: var(--green) !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;

  cursor: pointer !important;
  list-style: none !important;
}

.mars-vip-more summary::-webkit-details-marker {
  display: none !important;
}

.mars-vip-more summary::marker {
  display: none !important;
}

.mars-vip-more[open] summary span {
  transform: rotate(45deg) !important;
}

.mars-vip-more-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  padding: 0 24px 24px !important;
}

.mars-vip-more-grid article {
  padding: 20px !important;

  background: rgba(255, 255, 255, 0.04) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 14px !important;
}

.mars-vip-more-grid h3 {
  margin: 0 0 10px !important;

  color: #ffffff !important;

  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

.mars-vip-more-grid p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.74) !important;

  font-size: 14px !important;
  line-height: 1.6 !important;
}

/* Animations */
@keyframes marsVipOrbit {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

@keyframes marsVipFloat {
  0%, 100% {
    transform: translateY(0);
  }

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

@keyframes marsVipSpark {
  0%, 100% {
    opacity: 0.45;
    transform: scale(0.9);
  }

  50% {
    opacity: 1;
    transform: scale(1.18);
  }
}

/* Responsive */
@media (max-width: 1360px) {

  .mars-vip-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .mars-vip-levels {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .mars-vip-path {
    grid-template-columns: 1fr !important;
  }

  .mars-vip-more-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

}

@media (max-width: 980px) {

  .mars-vip {
    width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .mars-vip-hero {
    grid-template-columns: 1fr !important;
  }

  .mars-vip-trophy {
    min-height: 260px !important;
  }

  .mars-vip-path-grid {
    grid-template-columns: 1fr !important;
  }

}

@media (max-width: 680px) {

  .mars-vip {
    margin-top: 80px !important;
  }

  .mars-vip-hero,
  .mars-vip-path {
    padding: 22px !important;
  }

  .mars-vip-summary,
  .mars-vip-levels,
  .mars-vip-more-grid {
    grid-template-columns: 1fr !important;
  }

}

/* =====================================================
   END 28MARS — VIP SECTION REDESIGN V3
===================================================== */
/* =====================================================
   28MARS — BANKING SECTION
   CSS ONLY — INSERT AT THE VERY END OF style.css
===================================================== */

.mars-banking {
  width: min(1780px, calc(100vw - 56px)) !important;
  max-width: none !important;

  margin: 110px auto 0 !important;
  padding: 0 28px !important;

  color: #ffffff !important;
}

.mars-banking * {
  box-sizing: border-box !important;
}

.mars-banking-hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1.35fr) minmax(340px, 0.65fr) !important;
  gap: 28px !important;

  align-items: stretch !important;

  margin-bottom: 22px !important;
  padding: 34px !important;

  background:
    radial-gradient(circle at 84% 18%, rgba(142, 232, 95, 0.14), transparent 34%),
    radial-gradient(circle at 8% 100%, rgba(93, 180, 130, 0.12), transparent 38%),
    linear-gradient(135deg, rgba(9, 26, 22, 0.98), rgba(5, 13, 10, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.18) !important;
  border-radius: 28px !important;

  box-shadow:
    0 26px 58px rgba(0, 0, 0, 0.28),
    inset 0 0 0 1px rgba(255, 255, 255, 0.035) !important;

  overflow: hidden !important;
}

.mars-banking-kicker {
  margin: 0 0 12px !important;

  color: var(--gold) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  letter-spacing: 4px !important;
  text-transform: uppercase !important;
}

.mars-banking-copy h2 {
  margin: 0 0 18px !important;

  color: #ffffff !important;

  font-size: clamp(42px, 4vw, 70px) !important;
  font-weight: 950 !important;
  line-height: 1.03 !important;
  letter-spacing: -1.5px !important;
}

.mars-banking-copy p {
  max-width: 1120px !important;

  margin: 0 0 12px !important;

  color: rgba(255, 255, 255, 0.78) !important;

  font-size: 16px !important;
  line-height: 1.66 !important;
}

.mars-banking-copy p:last-child {
  margin-bottom: 0 !important;
}

/* Wallet animation */

.mars-banking-wallet {
  position: relative !important;

  min-height: 300px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  background:
    radial-gradient(circle at center, rgba(142, 232, 95, 0.13), transparent 58%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)) !important;

  border: 1px solid rgba(142, 232, 95, 0.16) !important;
  border-radius: 24px !important;

  overflow: hidden !important;
}

.mars-wallet-card {
  position: absolute !important;

  width: 220px !important;
  height: 138px !important;

  border-radius: 18px !important;

  box-shadow:
    0 24px 44px rgba(0, 0, 0, 0.34),
    inset 0 0 0 1px rgba(255, 255, 255, 0.16) !important;
}

.mars-wallet-card-a {
  transform: rotate(-10deg) translate(-18px, -4px) !important;

  background:
    linear-gradient(135deg, rgba(142, 232, 95, 0.96), rgba(58, 160, 98, 0.96)) !important;

  animation: marsWalletFloatA 4s ease-in-out infinite !important;
}

.mars-wallet-card-b {
  transform: rotate(8deg) translate(22px, 26px) !important;

  background:
    linear-gradient(135deg, rgba(237, 205, 118, 0.96), rgba(153, 104, 31, 0.96)) !important;

  animation: marsWalletFloatB 4.4s ease-in-out infinite !important;
}

.mars-wallet-chip {
  position: absolute !important;

  width: 46px !important;
  height: 34px !important;

  transform: translate(-54px, 5px) !important;

  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.72), rgba(255, 255, 255, 0.28)) !important;

  border-radius: 9px !important;

  box-shadow: 0 0 22px rgba(255, 255, 255, 0.20) !important;
}

.mars-wallet-shield {
  position: absolute !important;

  width: 70px !important;
  height: 82px !important;

  right: 54px !important;
  bottom: 46px !important;

  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.95), rgba(142, 232, 95, 0.78)) !important;

  clip-path: polygon(50% 0, 92% 16%, 84% 68%, 50% 100%, 16% 68%, 8% 16%) !important;

  opacity: 0.95 !important;

  animation: marsShieldPulse 2.8s ease-in-out infinite !important;
}

.mars-wallet-spark {
  position: absolute !important;

  color: var(--green) !important;

  font-size: 22px !important;

  text-shadow: 0 0 18px rgba(142, 232, 95, 0.85) !important;

  animation: marsBankSpark 2.4s ease-in-out infinite !important;
}

.mars-wallet-spark-a {
  left: 62px !important;
  top: 54px !important;
}

.mars-wallet-spark-b {
  right: 86px !important;
  top: 76px !important;

  animation-delay: 0.7s !important;
}

@keyframes marsWalletFloatA {
  0%, 100% {
    transform: rotate(-10deg) translate(-18px, -4px);
  }

  50% {
    transform: rotate(-8deg) translate(-18px, -16px);
  }
}

@keyframes marsWalletFloatB {
  0%, 100% {
    transform: rotate(8deg) translate(22px, 26px);
  }

  50% {
    transform: rotate(10deg) translate(22px, 14px);
  }
}

@keyframes marsShieldPulse {
  0%, 100% {
    transform: scale(1);
    opacity: 0.85;
  }

  50% {
    transform: scale(1.08);
    opacity: 1;
  }
}

@keyframes marsBankSpark {
  0%, 100% {
    opacity: 0.45;
    transform: scale(0.9);
  }

  50% {
    opacity: 1;
    transform: scale(1.18);
  }
}

/* Method cards */

.mars-banking-methods {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;

  margin-bottom: 22px !important;
}

.mars-banking-method-card {
  padding: 28px !important;

  background:
    linear-gradient(145deg, rgba(12, 24, 20, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.14) !important;
  border-radius: 22px !important;

  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.22) !important;
}

.mars-banking-method-card h3,
.mars-banking-table-copy h3,
.mars-banking-flow-copy h3 {
  margin: 0 0 12px !important;

  color: #ffffff !important;

  font-size: clamp(26px, 2.4vw, 40px) !important;
  font-weight: 950 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.7px !important;
}

.mars-banking-method-card p,
.mars-banking-table-copy p,
.mars-banking-flow-copy p {
  margin: 0 0 18px !important;

  color: rgba(255, 255, 255, 0.76) !important;

  font-size: 15px !important;
  line-height: 1.62 !important;
}

.mars-payment-icons {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}

.mars-pay-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-height: 38px !important;

  padding: 9px 14px !important;

  color: #ffffff !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1 !important;

  border-radius: 12px !important;

  border: 1px solid rgba(255, 255, 255, 0.14) !important;

  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.045) !important;
}

.mars-pay-visa {
  background: linear-gradient(135deg, #183a8f, #0c1b4d) !important;
}

.mars-pay-mastercard {
  background: linear-gradient(135deg, #df4c2f, #e1a12f) !important;
}

.mars-pay-skrill {
  background: linear-gradient(135deg, #7a1b72, #3b0d38) !important;
}

.mars-pay-neteller {
  background: linear-gradient(135deg, #78b72a, #265812) !important;
}

.mars-pay-ecopayz {
  background: linear-gradient(135deg, #2d8c7a, #0e3e36) !important;
}

.mars-pay-paypal {
  background: linear-gradient(135deg, #1d73c9, #0c3f8c) !important;
}

.mars-pay-poli {
  background: linear-gradient(135deg, #ef7c22, #74360c) !important;
}

.mars-pay-bank {
  background: linear-gradient(135deg, #2c3b3a, #101a17) !important;
}

.mars-pay-paysafe {
  background: linear-gradient(135deg, #d32f2f, #671515) !important;
}

.mars-pay-crypto {
  background: linear-gradient(135deg, #f2b84b, #6c4610) !important;
}

/* Limit cards */

.mars-banking-limits {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  margin-bottom: 22px !important;
}

.mars-banking-limit-card {
  min-height: 150px !important;

  padding: 22px !important;

  background:
    linear-gradient(145deg, rgba(13, 24, 20, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 20px !important;

  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.22) !important;
}

.mars-banking-limit-card--main {
  border-color: rgba(142, 232, 95, 0.48) !important;
}

.mars-banking-limit-card span {
  display: block !important;

  margin-bottom: 10px !important;

  color: var(--gold) !important;

  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
}

.mars-banking-limit-card strong {
  display: block !important;

  margin-bottom: 8px !important;

  color: var(--green) !important;

  font-size: clamp(30px, 3vw, 48px) !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  letter-spacing: -0.7px !important;
}

.mars-banking-limit-card p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.72) !important;

  font-size: 14px !important;
  line-height: 1.42 !important;
}

/* Table */

.mars-banking-table-section {
  display: grid !important;
  grid-template-columns: minmax(320px, 0.52fr) minmax(0, 1.48fr) !important;
  gap: 28px !important;

  margin-bottom: 22px !important;
  padding: 28px !important;

  background:
    linear-gradient(135deg, rgba(12, 24, 20, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.14) !important;
  border-radius: 24px !important;
}

.mars-banking-table-wrap {
  overflow-x: auto !important;
}

.mars-banking-table {
  width: 100% !important;
  min-width: 820px !important;

  border-collapse: separate !important;
  border-spacing: 0 8px !important;
}

.mars-banking-table th,
.mars-banking-table td {
  padding: 14px 15px !important;

  text-align: left !important;

  background: rgba(255, 255, 255, 0.045) !important;

  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;

  color: rgba(255, 255, 255, 0.82) !important;

  font-size: 13px !important;
  line-height: 1.35 !important;
}

.mars-banking-table thead th {
  color: var(--gold) !important;

  font-size: 11px !important;
  font-weight: 900 !important;

  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
}

.mars-banking-table tbody th {
  color: #ffffff !important;

  font-size: 14px !important;
  font-weight: 900 !important;
}

.mars-banking-table tr th:first-child,
.mars-banking-table tr td:first-child {
  border-left: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 12px 0 0 12px !important;
}

.mars-banking-table tr th:last-child,
.mars-banking-table tr td:last-child {
  border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 0 12px 12px 0 !important;
}

/* Banking flow */

.mars-banking-flow {
  display: grid !important;
  grid-template-columns: minmax(310px, 0.55fr) minmax(0, 1.45fr) !important;
  gap: 28px !important;

  margin-bottom: 22px !important;
  padding: 28px !important;

  background:
    radial-gradient(circle at 0% 0%, rgba(142, 232, 95, 0.10), transparent 34%),
    linear-gradient(135deg, rgba(13, 24, 20, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 24px !important;
}

.mars-banking-flow-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.mars-banking-flow-grid article {
  min-height: 180px !important;

  padding: 18px !important;

  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.025)) !important;

  border: 1px solid rgba(255, 255, 255, 0.09) !important;
  border-radius: 16px !important;
}

.mars-banking-flow-grid strong {
  display: block !important;

  margin-bottom: 10px !important;

  color: #ffffff !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

.mars-banking-flow-grid p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.72) !important;

  font-size: 13px !important;
  line-height: 1.52 !important;
}

/* Hidden recommendations */

.mars-banking-more {
  margin: 0 !important;

  background:
    linear-gradient(135deg, rgba(13, 24, 20, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.24) !important;
  border-radius: 20px !important;

  overflow: hidden !important;
}

.mars-banking-more summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;

  padding: 20px 24px !important;

  color: var(--green) !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;

  cursor: pointer !important;
  list-style: none !important;
}

.mars-banking-more summary::-webkit-details-marker {
  display: none !important;
}

.mars-banking-more summary::marker {
  display: none !important;
}

.mars-banking-more[open] summary span {
  transform: rotate(45deg) !important;
}

.mars-banking-more-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  padding: 0 24px 24px !important;
}

.mars-banking-more-grid article {
  padding: 20px !important;

  background: rgba(255, 255, 255, 0.04) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 14px !important;
}

.mars-banking-more-grid h3 {
  margin: 0 0 10px !important;

  color: #ffffff !important;

  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

.mars-banking-more-grid p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.74) !important;

  font-size: 14px !important;
  line-height: 1.6 !important;
}

/* Responsive */

@media (max-width: 1360px) {

  .mars-banking-limits {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .mars-banking-table-section,
  .mars-banking-flow {
    grid-template-columns: 1fr !important;
  }

  .mars-banking-flow-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .mars-banking-more-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

}

@media (max-width: 980px) {

  .mars-banking {
    width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .mars-banking-hero,
  .mars-banking-methods {
    grid-template-columns: 1fr !important;
  }

  .mars-banking-wallet {
    min-height: 260px !important;
  }

}

@media (max-width: 680px) {

  .mars-banking {
    margin-top: 80px !important;
  }

  .mars-banking-hero,
  .mars-banking-table-section,
  .mars-banking-flow {
    padding: 22px !important;
  }

  .mars-banking-limits,
  .mars-banking-flow-grid,
  .mars-banking-more-grid {
    grid-template-columns: 1fr !important;
  }

  .mars-banking-limit-card,
  .mars-banking-flow-grid article {
    min-height: auto !important;
  }

  .mars-wallet-card {
    width: 190px !important;
    height: 120px !important;
  }

}

/* =====================================================
   END 28MARS — BANKING SECTION
===================================================== */
/* =====================================================
   28MARS — BANKING FINAL COMPACT FIX
   Removes empty gaps and improves method overview
   INSERT AT THE VERY END OF style.css
===================================================== */

/* Slightly reduce vertical distance before Account section */
.mars-banking {
  margin-bottom: 80px !important;
}

/* =====================================================
   METHOD OVERVIEW — more balanced, less heavy
===================================================== */

.mars-banking-table-section {
  display: grid !important;
  grid-template-columns: 360px minmax(0, 1fr) !important;
  gap: 24px !important;

  align-items: start !important;

  padding: 26px !important;

  background:
    radial-gradient(circle at 0% 0%, rgba(142, 232, 95, 0.10), transparent 36%),
    linear-gradient(135deg, rgba(10, 23, 18, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border-radius: 24px !important;
}

/* Left text in Method overview should not become huge */
.mars-banking-table-copy {
  position: sticky !important;
  top: 110px !important;
}

.mars-banking-table-copy h3 {
  max-width: 320px !important;

  font-size: clamp(30px, 2.6vw, 44px) !important;
  line-height: 1.08 !important;
}

.mars-banking-table-copy p {
  max-width: 330px !important;

  font-size: 15px !important;
  line-height: 1.58 !important;
}

/* Table becomes cleaner and tighter */
.mars-banking-table {
  min-width: 0 !important;
  border-spacing: 0 7px !important;
}

.mars-banking-table th,
.mars-banking-table td {
  padding: 13px 14px !important;

  font-size: 13px !important;
  line-height: 1.32 !important;

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.055),
      rgba(255, 255, 255, 0.032)
    ) !important;
}

.mars-banking-table thead th {
  padding-top: 16px !important;
  padding-bottom: 16px !important;

  color: var(--gold) !important;

  font-size: 10px !important;
  letter-spacing: 1.5px !important;
}

.mars-banking-table tbody th {
  font-size: 14px !important;
  font-weight: 900 !important;
}

/* Make empty / unavailable cells visually subtle */
.mars-banking-table td:last-child,
.mars-banking-table td:nth-child(3) {
  color: rgba(255, 255, 255, 0.68) !important;
}

/* =====================================================
   CASHIER FLOW — remove huge empty boxes
===================================================== */

.mars-banking-flow {
  display: grid !important;
  grid-template-columns: 360px minmax(0, 1fr) !important;
  gap: 24px !important;

  align-items: stretch !important;

  padding: 26px !important;

  background:
    radial-gradient(circle at 0% 0%, rgba(142, 232, 95, 0.12), transparent 34%),
    linear-gradient(135deg, rgba(13, 26, 20, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border-radius: 24px !important;
}

.mars-banking-flow-copy h3 {
  max-width: 330px !important;

  font-size: clamp(30px, 2.7vw, 46px) !important;
  line-height: 1.08 !important;
}

.mars-banking-flow-copy p {
  max-width: 340px !important;

  font-size: 15px !important;
  line-height: 1.58 !important;
}

/* Instead of 5 tall boxes — compact 2-column list */
.mars-banking-flow-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;

  align-content: start !important;
}

.mars-banking-flow-grid article {
  min-height: 0 !important;
  height: auto !important;

  padding: 17px 18px !important;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.06),
      rgba(255, 255, 255, 0.026)
    ) !important;

  border: 1px solid rgba(255, 255, 255, 0.085) !important;
  border-radius: 15px !important;
}

.mars-banking-flow-grid article:last-child {
  grid-column: 1 / -1 !important;

  display: grid !important;
  grid-template-columns: 260px minmax(0, 1fr) !important;
  gap: 12px !important;

  align-items: center !important;

  border-color: rgba(142, 232, 95, 0.26) !important;
}

.mars-banking-flow-grid strong {
  margin-bottom: 7px !important;

  font-size: 15px !important;
  line-height: 1.22 !important;
}

.mars-banking-flow-grid p {
  font-size: 13px !important;
  line-height: 1.45 !important;
}

.mars-banking-flow-grid article:last-child strong,
.mars-banking-flow-grid article:last-child p {
  margin: 0 !important;
}

/* =====================================================
   BANKING RECOMMENDATIONS BUTTON
===================================================== */

.mars-banking-more {
  margin-top: 0 !important;
  margin-bottom: 0 !important;

  border-radius: 18px !important;
}

.mars-banking-more summary {
  padding: 18px 22px !important;
}

/* When opened, cards should not be huge */
.mars-banking-more-grid article {
  padding: 18px !important;
}

.mars-banking-more-grid h3 {
  font-size: 17px !important;
}

.mars-banking-more-grid p {
  font-size: 13px !important;
  line-height: 1.55 !important;
}

/* =====================================================
   RESPONSIVE
===================================================== */

@media (max-width: 1180px) {

  .mars-banking-table-section,
  .mars-banking-flow {
    grid-template-columns: 1fr !important;
  }

  .mars-banking-table-copy {
    position: static !important;
  }

  .mars-banking-table-copy h3,
  .mars-banking-table-copy p,
  .mars-banking-flow-copy h3,
  .mars-banking-flow-copy p {
    max-width: none !important;
  }

}

@media (max-width: 820px) {

  .mars-banking-flow-grid {
    grid-template-columns: 1fr !important;
  }

  .mars-banking-flow-grid article:last-child {
    grid-column: auto !important;
    grid-template-columns: 1fr !important;
  }

  .mars-banking-table-wrap {
    overflow-x: auto !important;
  }

  .mars-banking-table {
    min-width: 760px !important;
  }

}

@media (max-width: 680px) {

  .mars-banking-table-section,
  .mars-banking-flow {
    padding: 22px !important;
  }

}

/* =====================================================
   END 28MARS — BANKING FINAL COMPACT FIX
===================================================== */
/* =====================================================
   28MARS — ACCOUNT SECURITY SECTION
   CSS ONLY — INSERT AT THE VERY END OF style.css
===================================================== */

.mars-account {
  width: min(1780px, calc(100vw - 56px)) !important;
  max-width: none !important;

  margin: 110px auto 0 !important;
  padding: 0 28px !important;

  color: #ffffff !important;
}

.mars-account * {
  box-sizing: border-box !important;
}

.mars-account-hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.58fr) minmax(300px, 0.52fr) !important;
  gap: 22px !important;

  align-items: stretch !important;

  margin-bottom: 22px !important;
  padding: 32px !important;

  background:
    radial-gradient(circle at 88% 18%, rgba(142, 232, 95, 0.13), transparent 34%),
    radial-gradient(circle at 0% 100%, rgba(237, 205, 118, 0.10), transparent 38%),
    linear-gradient(135deg, rgba(11, 24, 19, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.18) !important;
  border-radius: 28px !important;

  box-shadow:
    0 26px 58px rgba(0, 0, 0, 0.28),
    inset 0 0 0 1px rgba(255, 255, 255, 0.035) !important;

  overflow: hidden !important;
}

.mars-account-kicker {
  margin: 0 0 12px !important;

  color: var(--gold) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  letter-spacing: 4px !important;
  text-transform: uppercase !important;
}

.mars-account-copy h2 {
  margin: 0 0 18px !important;

  color: #ffffff !important;

  font-size: clamp(42px, 4vw, 70px) !important;
  font-weight: 950 !important;
  line-height: 1.03 !important;
  letter-spacing: -1.5px !important;
}

.mars-account-copy p {
  max-width: 980px !important;

  margin: 0 0 12px !important;

  color: rgba(255, 255, 255, 0.78) !important;

  font-size: 16px !important;
  line-height: 1.64 !important;
}

.mars-account-copy p:last-child {
  margin-bottom: 0 !important;
}

/* Registration panel */

.mars-account-panel {
  padding: 24px !important;

  background:
    linear-gradient(145deg, rgba(18, 32, 24, 0.96), rgba(6, 14, 10, 0.96)) !important;

  border: 1px solid rgba(237, 205, 118, 0.16) !important;
  border-radius: 22px !important;

  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.22) !important;
}

.mars-account-label {
  display: block !important;

  margin-bottom: 12px !important;

  color: var(--gold) !important;

  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
}

.mars-account-panel h3 {
  margin: 0 0 16px !important;

  color: #ffffff !important;

  font-size: 26px !important;
  font-weight: 950 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.4px !important;
}

.mars-account-checks {
  display: grid !important;
  gap: 10px !important;
}

.mars-account-checks p {
  display: grid !important;
  grid-template-columns: 96px minmax(0, 1fr) !important;
  gap: 12px !important;

  margin: 0 !important;
  padding: 12px !important;

  background: rgba(255, 255, 255, 0.045) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 13px !important;
}

.mars-account-checks strong {
  color: var(--green) !important;

  font-size: 14px !important;
  font-weight: 950 !important;
  line-height: 1.3 !important;
}

.mars-account-checks span {
  color: rgba(255, 255, 255, 0.74) !important;

  font-size: 13px !important;
  line-height: 1.38 !important;
}

/* Animated security art */

.mars-account-art {
  position: relative !important;

  min-height: 300px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  background:
    radial-gradient(circle at center, rgba(142, 232, 95, 0.12), transparent 58%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)) !important;

  border: 1px solid rgba(142, 232, 95, 0.16) !important;
  border-radius: 22px !important;

  overflow: hidden !important;
}

.mars-account-phone {
  position: absolute !important;

  width: 132px !important;
  height: 220px !important;

  background:
    linear-gradient(180deg, rgba(20, 36, 30, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 3px solid rgba(255, 255, 255, 0.18) !important;
  border-radius: 28px !important;

  box-shadow:
    0 24px 48px rgba(0, 0, 0, 0.34),
    inset 0 0 0 1px rgba(142, 232, 95, 0.16) !important;

  animation: marsAccountFloat 4s ease-in-out infinite !important;
}

.mars-account-phone::before {
  content: "" !important;

  position: absolute !important;
  left: 38px !important;
  top: 14px !important;

  width: 56px !important;
  height: 7px !important;

  background: rgba(255, 255, 255, 0.20) !important;

  border-radius: 20px !important;
}

.mars-account-phone::after {
  content: "••••" !important;

  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 96px !important;

  color: var(--green) !important;

  text-align: center !important;

  font-size: 32px !important;
  letter-spacing: 4px !important;

  text-shadow: 0 0 18px rgba(142, 232, 95, 0.65) !important;
}

.mars-account-lock {
  position: absolute !important;

  width: 76px !important;
  height: 66px !important;

  right: 44px !important;
  bottom: 48px !important;

  background:
    linear-gradient(135deg, rgba(237, 205, 118, 0.98), rgba(160, 108, 31, 0.98)) !important;

  border-radius: 16px !important;

  box-shadow:
    0 18px 34px rgba(0, 0, 0, 0.28),
    0 0 26px rgba(237, 205, 118, 0.28) !important;

  animation: marsAccountLock 3s ease-in-out infinite !important;
}

.mars-account-lock::before {
  content: "" !important;

  position: absolute !important;

  left: 18px !important;
  top: -36px !important;

  width: 40px !important;
  height: 42px !important;

  border: 9px solid rgba(237, 205, 118, 0.95) !important;
  border-bottom: 0 !important;
  border-radius: 24px 24px 0 0 !important;
}

.mars-account-code {
  position: absolute !important;

  width: 64px !important;
  height: 34px !important;

  background: rgba(142, 232, 95, 0.16) !important;

  border: 1px solid rgba(142, 232, 95, 0.28) !important;
  border-radius: 12px !important;

  box-shadow: 0 0 24px rgba(142, 232, 95, 0.14) !important;
}

.mars-account-code::before {
  content: "CODE" !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;
  height: 100% !important;

  color: var(--green) !important;

  font-size: 10px !important;
  font-weight: 950 !important;
  letter-spacing: 1px !important;
}

.mars-account-code-a {
  left: 44px !important;
  top: 54px !important;

  animation: marsAccountCode 3.6s ease-in-out infinite !important;
}

.mars-account-code-b {
  right: 48px !important;
  top: 82px !important;

  animation: marsAccountCode 4.2s ease-in-out infinite reverse !important;
}

.mars-account-spark {
  position: absolute !important;

  color: var(--green) !important;

  font-size: 22px !important;

  text-shadow: 0 0 18px rgba(142, 232, 95, 0.85) !important;

  animation: marsAccountSpark 2.4s ease-in-out infinite !important;
}

.mars-account-spark-a {
  left: 64px !important;
  bottom: 62px !important;
}

.mars-account-spark-b {
  right: 78px !important;
  top: 46px !important;

  animation-delay: 0.7s !important;
}

/* Top strip */

.mars-account-strip {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  margin-bottom: 22px !important;
}

.mars-account-strip article {
  min-height: 0 !important;

  padding: 22px !important;

  background:
    linear-gradient(145deg, rgba(14, 26, 20, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 20px !important;

  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.22) !important;
}

.mars-account-strip span {
  display: block !important;

  margin-bottom: 9px !important;

  color: var(--gold) !important;

  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
}

.mars-account-strip strong {
  display: block !important;

  margin-bottom: 9px !important;

  color: #ffffff !important;

  font-size: 20px !important;
  font-weight: 950 !important;
  line-height: 1.12 !important;
}

.mars-account-strip p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.72) !important;

  font-size: 13px !important;
  line-height: 1.5 !important;
}

/* Account flow */

.mars-account-flow {
  display: grid !important;
  grid-template-columns: 380px minmax(0, 1fr) !important;
  gap: 24px !important;

  align-items: start !important;

  margin-bottom: 22px !important;
  padding: 28px !important;

  background:
    radial-gradient(circle at 0% 0%, rgba(142, 232, 95, 0.10), transparent 36%),
    linear-gradient(135deg, rgba(10, 23, 18, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.14) !important;
  border-radius: 24px !important;
}

.mars-account-flow-copy h3,
.mars-account-protection-main h3 {
  margin: 0 0 12px !important;

  color: #ffffff !important;

  font-size: clamp(30px, 2.6vw, 44px) !important;
  font-weight: 950 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.7px !important;
}

.mars-account-flow-copy p,
.mars-account-protection-main p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.76) !important;

  font-size: 15px !important;
  line-height: 1.6 !important;
}

.mars-account-flow-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.mars-account-flow-list article {
  padding: 18px !important;

  background: rgba(255, 255, 255, 0.045) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 16px !important;
}

.mars-account-flow-list strong {
  display: block !important;

  margin-bottom: 8px !important;

  color: #ffffff !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

.mars-account-flow-list p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.72) !important;

  font-size: 13px !important;
  line-height: 1.5 !important;
}

/* Protection */

.mars-account-protection {
  display: grid !important;
  grid-template-columns: minmax(340px, 1.1fr) repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;

  margin-bottom: 22px !important;
}

.mars-account-protection article {
  padding: 22px !important;

  background:
    linear-gradient(145deg, rgba(14, 26, 20, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 20px !important;

  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.22) !important;
}

.mars-account-protection-main {
  border-color: rgba(142, 232, 95, 0.26) !important;
}

.mars-account-icon {
  position: relative !important;

  display: inline-flex !important;

  width: 48px !important;
  height: 48px !important;

  margin-bottom: 14px !important;

  background: rgba(142, 232, 95, 0.13) !important;

  border: 1px solid rgba(142, 232, 95, 0.26) !important;
  border-radius: 15px !important;
}

.mars-account-icon-lock::before {
  content: "🔒" !important;
}

.mars-account-icon-phone::before {
  content: "📱" !important;
}

.mars-account-icon-screen::before {
  content: "✓" !important;
}

.mars-account-icon::before {
  position: absolute !important;
  inset: 0 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  color: var(--green) !important;

  font-size: 22px !important;
  font-weight: 950 !important;
}

.mars-account-protection h4 {
  margin: 0 0 9px !important;

  color: #ffffff !important;

  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.18 !important;
}

.mars-account-protection p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.72) !important;

  font-size: 13px !important;
  line-height: 1.52 !important;
}

/* Hidden details */

.mars-account-more {
  margin: 0 !important;

  background:
    linear-gradient(135deg, rgba(13, 24, 20, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.24) !important;
  border-radius: 20px !important;

  overflow: hidden !important;
}

.mars-account-more summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;

  padding: 20px 24px !important;

  color: var(--green) !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;

  cursor: pointer !important;
  list-style: none !important;
}

.mars-account-more summary::-webkit-details-marker {
  display: none !important;
}

.mars-account-more summary::marker {
  display: none !important;
}

.mars-account-more[open] summary span {
  transform: rotate(45deg) !important;
}

.mars-account-more-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  padding: 0 24px 24px !important;
}

.mars-account-more-grid article {
  padding: 20px !important;

  background: rgba(255, 255, 255, 0.04) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 14px !important;
}

.mars-account-more-grid h3 {
  margin: 0 0 10px !important;

  color: #ffffff !important;

  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

.mars-account-more-grid p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.74) !important;

  font-size: 14px !important;
  line-height: 1.6 !important;
}

/* Animations */

@keyframes marsAccountFloat {
  0%, 100% {
    transform: translateY(0) rotate(-2deg);
  }

  50% {
    transform: translateY(-12px) rotate(2deg);
  }
}

@keyframes marsAccountLock {
  0%, 100% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.07);
  }
}

@keyframes marsAccountCode {
  0%, 100% {
    opacity: 0.45;
    transform: translateY(0);
  }

  50% {
    opacity: 1;
    transform: translateY(-8px);
  }
}

@keyframes marsAccountSpark {
  0%, 100% {
    opacity: 0.45;
    transform: scale(0.9);
  }

  50% {
    opacity: 1;
    transform: scale(1.18);
  }
}

/* Responsive */

@media (max-width: 1360px) {

  .mars-account-hero {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.7fr) !important;
  }

  .mars-account-art {
    grid-column: 1 / -1 !important;
    min-height: 250px !important;
  }

  .mars-account-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .mars-account-protection {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .mars-account-protection-main {
    grid-column: 1 / -1 !important;
  }

  .mars-account-more-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

}

@media (max-width: 980px) {

  .mars-account {
    width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .mars-account-hero,
  .mars-account-flow {
    grid-template-columns: 1fr !important;
  }

  .mars-account-flow-list {
    grid-template-columns: 1fr !important;
  }

}

@media (max-width: 680px) {

  .mars-account {
    margin-top: 80px !important;
  }

  .mars-account-hero,
  .mars-account-flow {
    padding: 22px !important;
  }

  .mars-account-strip,
  .mars-account-protection,
  .mars-account-more-grid {
    grid-template-columns: 1fr !important;
  }

  .mars-account-protection-main {
    grid-column: auto !important;
  }

  .mars-account-checks p {
    grid-template-columns: 1fr !important;
  }

}

/* =====================================================
   END 28MARS — ACCOUNT SECURITY SECTION
===================================================== */

/* =====================================================
   28MARS — ACCOUNT ART REDESIGN
   Better phone screen + clean security shield
   INSERT AT THE VERY END OF style.css
===================================================== */

/* Make the art panel less empty */
.mars-account-art {
  min-height: 320px !important;

  background:
    radial-gradient(circle at 50% 42%, rgba(142, 232, 95, 0.16), transparent 42%),
    radial-gradient(circle at 18% 80%, rgba(142, 232, 95, 0.12), transparent 30%),
    radial-gradient(circle at 86% 16%, rgba(237, 205, 118, 0.10), transparent 28%),
    linear-gradient(145deg, rgba(17, 35, 24, 0.98), rgba(6, 14, 10, 0.98)) !important;

  border-color: rgba(142, 232, 95, 0.22) !important;
}

/* Bigger, more detailed phone */
.mars-account-phone {
  width: 156px !important;
  height: 246px !important;

  left: 50% !important;
  top: 50% !important;

  transform: translate(-50%, -50%) rotate(-2deg) !important;

  background:
    linear-gradient(180deg, rgba(18, 34, 28, 0.98), rgba(3, 9, 7, 0.98)) !important;

  border: 4px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 34px !important;

  box-shadow:
    0 28px 54px rgba(0, 0, 0, 0.42),
    0 0 34px rgba(142, 232, 95, 0.10),
    inset 0 0 0 1px rgba(142, 232, 95, 0.18) !important;

  animation: marsAccountPhoneFloat 4.2s ease-in-out infinite !important;
}

/* Top speaker */
.mars-account-phone::before {
  content: "" !important;

  position: absolute !important;
  left: 50% !important;
  top: 16px !important;

  width: 62px !important;
  height: 8px !important;

  transform: translateX(-50%) !important;

  background: rgba(255, 255, 255, 0.20) !important;

  border-radius: 20px !important;
}

/* Filled phone screen content */
.mars-account-phone::after {
  content: "28mars\A Secure login\A • • • •\A Verified account" !important;

  white-space: pre-line !important;

  position: absolute !important;
  left: 18px !important;
  right: 18px !important;
  top: 54px !important;
  bottom: 22px !important;

  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;

  padding: 18px 12px !important;

  background:
    linear-gradient(180deg, rgba(142, 232, 95, 0.10), rgba(255, 255, 255, 0.025)) !important;

  border: 1px solid rgba(142, 232, 95, 0.18) !important;
  border-radius: 22px !important;

  color: rgba(255, 255, 255, 0.88) !important;

  text-align: center !important;

  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.75 !important;
  letter-spacing: 0.3px !important;

  text-shadow: 0 0 18px rgba(142, 232, 95, 0.26) !important;
}

/* Turn ugly lock into a clean shield badge */
.mars-account-lock {
  width: 92px !important;
  height: 104px !important;

  right: 42px !important;
  bottom: 38px !important;

  background:
    linear-gradient(180deg, rgba(237, 205, 118, 0.98), rgba(169, 111, 28, 0.98)) !important;

  clip-path: polygon(50% 0%, 88% 13%, 82% 67%, 50% 100%, 18% 67%, 12% 13%) !important;

  border-radius: 0 !important;

  box-shadow:
    0 22px 40px rgba(0, 0, 0, 0.34),
    0 0 30px rgba(237, 205, 118, 0.24) !important;

  animation: marsAccountShieldPulse 3.2s ease-in-out infinite !important;
}

/* Remove old lock arch */
.mars-account-lock::before {
  display: none !important;
}

/* Add check mark inside shield */
.mars-account-lock::after {
  content: "✓" !important;

  position: absolute !important;
  inset: 0 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  color: #061008 !important;

  font-size: 42px !important;
  font-weight: 950 !important;

  text-shadow: none !important;
}

/* Code bubbles become smaller and cleaner */
.mars-account-code {
  width: 78px !important;
  height: 42px !important;

  background:
    linear-gradient(135deg, rgba(142, 232, 95, 0.18), rgba(142, 232, 95, 0.07)) !important;

  border: 1px solid rgba(142, 232, 95, 0.32) !important;
  border-radius: 14px !important;

  box-shadow:
    0 0 24px rgba(142, 232, 95, 0.14),
    inset 0 0 0 1px rgba(255, 255, 255, 0.035) !important;
}

.mars-account-code::before {
  content: "SMS CODE" !important;

  color: var(--green) !important;

  font-size: 10px !important;
  font-weight: 950 !important;
  letter-spacing: 1.1px !important;
}

.mars-account-code-a {
  left: 36px !important;
  top: 50px !important;
}

.mars-account-code-b {
  right: 40px !important;
  top: 78px !important;
}

/* Add soft background lines */
.mars-account-art::before {
  content: "" !important;

  position: absolute !important;
  inset: 30px !important;

  border: 1px solid rgba(142, 232, 95, 0.08) !important;
  border-radius: 28px !important;

  pointer-events: none !important;
}

.mars-account-art::after {
  content: "" !important;

  position: absolute !important;
  left: 50% !important;
  top: 50% !important;

  width: 260px !important;
  height: 260px !important;

  transform: translate(-50%, -50%) !important;

  border: 1px solid rgba(142, 232, 95, 0.12) !important;
  border-radius: 50% !important;

  pointer-events: none !important;

  animation: marsAccountRing 8s linear infinite !important;
}

/* Sparks reposition */
.mars-account-spark-a {
  left: 70px !important;
  bottom: 64px !important;
}

.mars-account-spark-b {
  right: 96px !important;
  top: 48px !important;
}

/* New animations */
@keyframes marsAccountPhoneFloat {
  0%, 100% {
    transform: translate(-50%, -50%) rotate(-2deg);
  }

  50% {
    transform: translate(-50%, calc(-50% - 10px)) rotate(2deg);
  }
}

@keyframes marsAccountShieldPulse {
  0%, 100% {
    transform: scale(1);
    opacity: 0.92;
  }

  50% {
    transform: scale(1.07);
    opacity: 1;
  }
}

@keyframes marsAccountRing {
  from {
    transform: translate(-50%, -50%) rotate(0deg);
  }

  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}

/* Mobile */
@media (max-width: 680px) {

  .mars-account-phone {
    width: 138px !important;
    height: 224px !important;
  }

  .mars-account-lock {
    width: 76px !important;
    height: 88px !important;

    right: 28px !important;
    bottom: 34px !important;
  }

  .mars-account-lock::after {
    font-size: 34px !important;
  }

  .mars-account-code-a {
    left: 24px !important;
  }

  .mars-account-code-b {
    right: 24px !important;
  }

}

/* =====================================================
   END 28MARS — ACCOUNT ART REDESIGN
===================================================== */
/* =====================================================
   28MARS — MOBILE SECTION
   CSS ONLY — INSERT AT THE VERY END OF style.css
===================================================== */

.mars-mobile {
  width: min(1780px, calc(100vw - 56px)) !important;
  max-width: none !important;

  margin: 110px auto 0 !important;
  padding: 0 28px !important;

  color: #ffffff !important;
}

.mars-mobile * {
  box-sizing: border-box !important;
}

.mars-mobile-layout {
  display: grid !important;
  grid-template-columns: minmax(360px, 0.72fr) minmax(0, 1.28fr) !important;
  gap: 30px !important;

  align-items: stretch !important;

  margin-bottom: 24px !important;
}

.mars-mobile-visual {
  position: relative !important;

  min-height: 720px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  background:
    radial-gradient(circle at 50% 34%, rgba(142, 232, 95, 0.20), transparent 34%),
    radial-gradient(circle at 12% 92%, rgba(237, 205, 118, 0.12), transparent 30%),
    linear-gradient(145deg, rgba(12, 28, 20, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.20) !important;
  border-radius: 30px !important;

  box-shadow:
    0 28px 60px rgba(0, 0, 0, 0.30),
    inset 0 0 0 1px rgba(255, 255, 255, 0.035) !important;

  overflow: hidden !important;
}

/* Phone */

.mars-mobile-phone {
  position: relative !important;

  width: 310px !important;
  height: 640px !important;

  padding: 14px !important;

  background:
    linear-gradient(180deg, rgba(32, 42, 38, 0.98), rgba(6, 10, 9, 0.98)) !important;

  border: 4px solid rgba(255, 255, 255, 0.16) !important;
  border-radius: 42px !important;

  box-shadow:
    0 36px 72px rgba(0, 0, 0, 0.42),
    0 0 44px rgba(142, 232, 95, 0.12),
    inset 0 0 0 1px rgba(142, 232, 95, 0.14) !important;

  animation: marsMobileFloat 4.4s ease-in-out infinite !important;
}

.mars-mobile-phone::before {
  content: "" !important;

  position: absolute !important;
  left: 50% !important;
  top: 13px !important;

  width: 86px !important;
  height: 8px !important;

  transform: translateX(-50%) !important;

  background: rgba(255, 255, 255, 0.22) !important;

  border-radius: 20px !important;
  z-index: 2 !important;
}

.mars-mobile-screen {
  position: relative !important;

  height: 100% !important;
  padding: 30px 16px 16px !important;

  background:
    radial-gradient(circle at 80% 12%, rgba(142, 232, 95, 0.18), transparent 26%),
    linear-gradient(180deg, rgba(9, 24, 16, 0.98), rgba(2, 7, 5, 0.98)) !important;

  border-radius: 32px !important;

  overflow: hidden !important;
}

.mars-mobile-topbar {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;

  margin-bottom: 16px !important;
}

.mars-mobile-logo {
  color: #ffffff !important;

  font-size: 25px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
}

.mars-mobile-logo::first-letter {
  color: #ffffff !important;
}

.mars-mobile-status {
  padding: 7px 9px !important;

  color: #061008 !important;
  background: var(--green) !important;

  border-radius: 9px !important;

  font-size: 10px !important;
  font-weight: 950 !important;
}

.mars-mobile-promo {
  min-height: 148px !important;

  padding: 17px !important;
  margin-bottom: 14px !important;

  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;

  background:
    radial-gradient(circle at 82% 18%, rgba(237, 205, 118, 0.30), transparent 34%),
    linear-gradient(135deg, rgba(142, 232, 95, 0.22), rgba(255, 255, 255, 0.045)) !important;

  border: 1px solid rgba(142, 232, 95, 0.22) !important;
  border-radius: 20px !important;
}

.mars-mobile-promo span {
  margin-bottom: 7px !important;

  color: var(--gold) !important;

  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
}

.mars-mobile-promo strong {
  margin-bottom: 8px !important;

  color: #ffffff !important;

  font-size: 22px !important;
  font-weight: 950 !important;
  line-height: 1.08 !important;
}

.mars-mobile-promo em {
  color: var(--green) !important;

  font-size: 12px !important;
  font-style: normal !important;
  font-weight: 900 !important;
}

.mars-mobile-game-row {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 9px !important;

  margin-bottom: 14px !important;
}

.mars-mobile-game-row span {
  height: 92px !important;

  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.025)) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 14px !important;
}

.mars-mobile-game-row span:nth-child(1) {
  background:
    radial-gradient(circle at 50% 36%, rgba(237, 205, 118, 0.32), transparent 38%),
    linear-gradient(145deg, rgba(61, 31, 13, 0.96), rgba(10, 15, 10, 0.96)) !important;
}

.mars-mobile-game-row span:nth-child(2) {
  background:
    radial-gradient(circle at 50% 36%, rgba(142, 232, 95, 0.30), transparent 38%),
    linear-gradient(145deg, rgba(14, 52, 29, 0.96), rgba(10, 15, 10, 0.96)) !important;
}

.mars-mobile-game-row span:nth-child(3) {
  background:
    radial-gradient(circle at 50% 36%, rgba(92, 165, 255, 0.25), transparent 38%),
    linear-gradient(145deg, rgba(16, 32, 58, 0.96), rgba(10, 15, 10, 0.96)) !important;
}

.mars-mobile-cashier {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 9px !important;

  margin-bottom: 14px !important;
}

.mars-mobile-cashier p {
  margin: 0 !important;
  padding: 13px !important;

  background: rgba(255, 255, 255, 0.055) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 14px !important;
}

.mars-mobile-cashier span {
  display: block !important;

  margin-bottom: 5px !important;

  color: rgba(255, 255, 255, 0.62) !important;

  font-size: 10px !important;
  font-weight: 800 !important;
}

.mars-mobile-cashier strong {
  display: block !important;

  color: var(--green) !important;

  font-size: 13px !important;
  font-weight: 950 !important;
}

.mars-mobile-nav {
  position: absolute !important;
  left: 16px !important;
  right: 16px !important;
  bottom: 16px !important;

  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 6px !important;

  padding: 10px !important;

  background: rgba(0, 0, 0, 0.34) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 18px !important;

  backdrop-filter: blur(12px) !important;
}

.mars-mobile-nav span {
  color: rgba(255, 255, 255, 0.72) !important;

  text-align: center !important;

  font-size: 9px !important;
  font-weight: 900 !important;
}

/* Decorative objects */

.mars-mobile-chip {
  position: absolute !important;

  width: 72px !important;
  height: 72px !important;

  border-radius: 50% !important;

  background:
    radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.20) 0 20%, transparent 21%),
    conic-gradient(
      from 0deg,
      var(--green) 0 12%,
      #ffffff 12% 17%,
      var(--green) 17% 32%,
      #ffffff 32% 37%,
      var(--green) 37% 52%,
      #ffffff 52% 57%,
      var(--green) 57% 72%,
      #ffffff 72% 77%,
      var(--green) 77% 100%
    ) !important;

  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.28) !important;
}

.mars-mobile-chip-a {
  left: 46px !important;
  top: 88px !important;

  animation: marsMobileChipA 5s ease-in-out infinite !important;
}

.mars-mobile-chip-b {
  right: 56px !important;
  bottom: 98px !important;

  transform: scale(0.78) !important;

  animation: marsMobileChipB 5.4s ease-in-out infinite !important;
}

.mars-mobile-shield {
  position: absolute !important;

  right: 72px !important;
  top: 104px !important;

  width: 74px !important;
  height: 86px !important;

  background:
    linear-gradient(180deg, rgba(237, 205, 118, 0.98), rgba(161, 104, 28, 0.98)) !important;

  clip-path: polygon(50% 0%, 88% 13%, 82% 67%, 50% 100%, 18% 67%, 12% 13%) !important;

  box-shadow:
    0 22px 40px rgba(0, 0, 0, 0.32),
    0 0 30px rgba(237, 205, 118, 0.24) !important;

  animation: marsMobileShield 3.2s ease-in-out infinite !important;
}

.mars-mobile-shield::after {
  content: "✓" !important;

  position: absolute !important;
  inset: 0 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  color: #061008 !important;

  font-size: 36px !important;
  font-weight: 950 !important;
}

.mars-mobile-spark {
  position: absolute !important;

  color: var(--green) !important;

  font-size: 24px !important;

  text-shadow: 0 0 18px rgba(142, 232, 95, 0.85) !important;

  animation: marsMobileSpark 2.4s ease-in-out infinite !important;
}

.mars-mobile-spark-a {
  left: 96px !important;
  bottom: 120px !important;
}

.mars-mobile-spark-b {
  right: 114px !important;
  top: 54px !important;

  animation-delay: 0.7s !important;
}

/* Copy */

.mars-mobile-copy {
  padding: 36px !important;

  background:
    linear-gradient(135deg, rgba(10, 23, 18, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.14) !important;
  border-radius: 30px !important;

  box-shadow:
    0 26px 58px rgba(0, 0, 0, 0.26),
    inset 0 0 0 1px rgba(255, 255, 255, 0.035) !important;
}

.mars-mobile-kicker {
  margin: 0 0 12px !important;

  color: var(--gold) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  letter-spacing: 4px !important;
  text-transform: uppercase !important;
}

.mars-mobile-copy h2 {
  margin: 0 0 18px !important;

  color: #ffffff !important;

  font-size: clamp(42px, 4vw, 70px) !important;
  font-weight: 950 !important;
  line-height: 1.03 !important;
  letter-spacing: -1.5px !important;
}

.mars-mobile-copy > p {
  max-width: 1180px !important;

  margin: 0 0 12px !important;

  color: rgba(255, 255, 255, 0.78) !important;

  font-size: 16px !important;
  line-height: 1.66 !important;
}

.mars-mobile-points {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;

  margin-top: 24px !important;
}

.mars-mobile-points article {
  padding: 20px !important;

  background: rgba(255, 255, 255, 0.045) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 18px !important;
}

.mars-mobile-points span {
  display: block !important;

  margin-bottom: 9px !important;

  color: var(--gold) !important;

  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 1.7px !important;
  text-transform: uppercase !important;
}

.mars-mobile-points h3 {
  margin: 0 0 9px !important;

  color: #ffffff !important;

  font-size: 19px !important;
  font-weight: 900 !important;
  line-height: 1.18 !important;
}

.mars-mobile-points p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.72) !important;

  font-size: 13px !important;
  line-height: 1.52 !important;
}

/* Use guide */

.mars-mobile-use {
  display: grid !important;
  grid-template-columns: 380px minmax(0, 1fr) !important;
  gap: 24px !important;

  margin-bottom: 22px !important;
  padding: 28px !important;

  background:
    radial-gradient(circle at 0% 0%, rgba(142, 232, 95, 0.10), transparent 36%),
    linear-gradient(135deg, rgba(10, 23, 18, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.14) !important;
  border-radius: 24px !important;
}

.mars-mobile-use-copy h3 {
  margin: 0 0 12px !important;

  color: #ffffff !important;

  font-size: clamp(30px, 2.6vw, 44px) !important;
  font-weight: 950 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.7px !important;
}

.mars-mobile-use-copy p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.76) !important;

  font-size: 15px !important;
  line-height: 1.6 !important;
}

.mars-mobile-use-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.mars-mobile-use-grid article {
  padding: 18px !important;

  background: rgba(255, 255, 255, 0.045) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 16px !important;
}

.mars-mobile-use-grid strong {
  display: block !important;

  margin-bottom: 8px !important;

  color: #ffffff !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

.mars-mobile-use-grid p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.72) !important;

  font-size: 13px !important;
  line-height: 1.5 !important;
}

/* Hidden details */

.mars-mobile-more {
  margin: 0 !important;

  background:
    linear-gradient(135deg, rgba(13, 24, 20, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.24) !important;
  border-radius: 20px !important;

  overflow: hidden !important;
}

.mars-mobile-more summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;

  padding: 20px 24px !important;

  color: var(--green) !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;

  cursor: pointer !important;
  list-style: none !important;
}

.mars-mobile-more summary::-webkit-details-marker {
  display: none !important;
}

.mars-mobile-more summary::marker {
  display: none !important;
}

.mars-mobile-more[open] summary span {
  transform: rotate(45deg) !important;
}

.mars-mobile-more-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  padding: 0 24px 24px !important;
}

.mars-mobile-more-grid article {
  padding: 20px !important;

  background: rgba(255, 255, 255, 0.04) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 14px !important;
}

.mars-mobile-more-grid h3 {
  margin: 0 0 10px !important;

  color: #ffffff !important;

  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

.mars-mobile-more-grid p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.74) !important;

  font-size: 14px !important;
  line-height: 1.6 !important;
}

/* Animations */

@keyframes marsMobileFloat {
  0%, 100% {
    transform: translateY(0) rotate(-1deg);
  }

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

@keyframes marsMobileChipA {
  0%, 100% {
    transform: translateY(0) rotate(0deg);
  }

  50% {
    transform: translateY(-16px) rotate(16deg);
  }
}

@keyframes marsMobileChipB {
  0%, 100% {
    transform: scale(0.78) translateY(0) rotate(0deg);
  }

  50% {
    transform: scale(0.78) translateY(-14px) rotate(-18deg);
  }
}

@keyframes marsMobileShield {
  0%, 100% {
    transform: scale(1);
    opacity: 0.92;
  }

  50% {
    transform: scale(1.07);
    opacity: 1;
  }
}

@keyframes marsMobileSpark {
  0%, 100% {
    opacity: 0.45;
    transform: scale(0.9);
  }

  50% {
    opacity: 1;
    transform: scale(1.18);
  }
}

/* Responsive */

@media (max-width: 1280px) {

  .mars-mobile-layout {
    grid-template-columns: 1fr !important;
  }

  .mars-mobile-visual {
    min-height: 620px !important;
  }

  .mars-mobile-phone {
    width: 290px !important;
    height: 600px !important;
  }

}

@media (max-width: 980px) {

  .mars-mobile {
    width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .mars-mobile-use {
    grid-template-columns: 1fr !important;
  }

  .mars-mobile-more-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

}

@media (max-width: 680px) {

  .mars-mobile {
    margin-top: 80px !important;
  }

  .mars-mobile-visual {
    min-height: 560px !important;
  }

  .mars-mobile-copy,
  .mars-mobile-use {
    padding: 22px !important;
  }

  .mars-mobile-points,
  .mars-mobile-use-grid,
  .mars-mobile-more-grid {
    grid-template-columns: 1fr !important;
  }

  .mars-mobile-phone {
    width: 255px !important;
    height: 540px !important;
  }

  .mars-mobile-chip-a {
    left: 26px !important;
  }

  .mars-mobile-chip-b {
    right: 26px !important;
  }

  .mars-mobile-shield {
    right: 36px !important;
  }

}

/* =====================================================
   END 28MARS — MOBILE SECTION
===================================================== */
/* =====================================================
   28MARS — MOBILE REAL WEBP IMAGE FIX
===================================================== */

.mars-mobile-visual {
  min-height: auto !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.mars-mobile-image {
  display: block !important;

  width: 100% !important;
  height: 100% !important;
  min-height: 720px !important;

  object-fit: cover !important;
  object-position: center center !important;

  border-radius: 30px !important;
}

@media (max-width: 1280px) {
  .mars-mobile-image {
    min-height: 620px !important;
  }
}

@media (max-width: 680px) {
  .mars-mobile-image {
    min-height: 520px !important;
  }
}
/* =====================================================
   28MARS — ABOUT SECTION
   CSS ONLY — INSERT AT THE VERY END OF style.css
===================================================== */

.mars-about {
  width: min(1780px, calc(100vw - 56px)) !important;
  max-width: none !important;

  margin: 110px auto 0 !important;
  padding: 0 28px !important;

  color: #ffffff !important;
}

.mars-about * {
  box-sizing: border-box !important;
}

/* Hero */

.mars-about-hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.85fr) !important;
  gap: 30px !important;

  align-items: stretch !important;

  margin-bottom: 24px !important;
  padding: 34px !important;

  background:
    radial-gradient(circle at 85% 15%, rgba(237, 205, 118, 0.18), transparent 34%),
    radial-gradient(circle at 10% 100%, rgba(142, 232, 95, 0.12), transparent 38%),
    linear-gradient(135deg, rgba(18, 25, 16, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(237, 205, 118, 0.18) !important;
  border-radius: 30px !important;

  box-shadow:
    0 28px 60px rgba(0, 0, 0, 0.30),
    inset 0 0 0 1px rgba(255, 255, 255, 0.035) !important;

  overflow: hidden !important;
}

.mars-about-kicker {
  margin: 0 0 12px !important;

  color: var(--gold) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  letter-spacing: 4px !important;
  text-transform: uppercase !important;
}

.mars-about-copy h2 {
  max-width: 980px !important;

  margin: 0 0 18px !important;

  color: #ffffff !important;

  font-size: clamp(42px, 4vw, 70px) !important;
  font-weight: 950 !important;
  line-height: 1.03 !important;
  letter-spacing: -1.6px !important;
}

.mars-about-copy p {
  max-width: 1120px !important;

  margin: 0 0 12px !important;

  color: rgba(255, 255, 255, 0.78) !important;

  font-size: 16px !important;
  line-height: 1.66 !important;
}

.mars-about-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;

  margin-top: 24px !important;
}

.mars-about-actions a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-height: 48px !important;

  padding: 14px 22px !important;

  color: #061008 !important;
  background: var(--green) !important;

  border-radius: 999px !important;

  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-decoration: none !important;

  box-shadow: 0 14px 28px rgba(142, 232, 95, 0.20) !important;
}

.mars-about-actions a:nth-child(2) {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.065) !important;

  border: 1px solid rgba(255, 255, 255, 0.12) !important;

  box-shadow: none !important;
}

/* Visual */

.mars-about-visual {
  position: relative !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-height: 420px !important;

  margin: 0 !important;

  background:
    radial-gradient(circle at center, rgba(142, 232, 95, 0.16), transparent 58%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)) !important;

  border: 1px solid rgba(237, 205, 118, 0.18) !important;
  border-radius: 26px !important;

  overflow: hidden !important;
}

.mars-about-visual::before {
  content: "" !important;

  position: absolute !important;
  inset: 28px !important;

  border: 1px solid rgba(237, 205, 118, 0.11) !important;
  border-radius: 28px !important;

  pointer-events: none !important;
}

.mars-about-visual img {
  display: block !important;

  width: 115% !important;
  max-width: none !important;
  height: auto !important;

  object-fit: contain !important;

  filter:
    drop-shadow(0 26px 44px rgba(0, 0, 0, 0.36))
    drop-shadow(0 0 28px rgba(142, 232, 95, 0.12)) !important;

  transform: translateY(8px) !important;
}

/* Pillars */

.mars-about-pillars {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  margin-bottom: 24px !important;
}

.mars-about-pillars article {
  padding: 24px !important;

  background:
    linear-gradient(145deg, rgba(14, 26, 20, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 22px !important;

  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.22) !important;
}

.mars-about-pillars span {
  display: block !important;

  margin-bottom: 10px !important;

  color: var(--gold) !important;

  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
}

.mars-about-pillars h3 {
  margin: 0 0 10px !important;

  color: #ffffff !important;

  font-size: 21px !important;
  font-weight: 950 !important;
  line-height: 1.14 !important;
  letter-spacing: -0.3px !important;
}

.mars-about-pillars p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.72) !important;

  font-size: 13px !important;
  line-height: 1.55 !important;
}

/* Balance block */

.mars-about-balance {
  display: grid !important;
  grid-template-columns: 410px minmax(0, 1fr) !important;
  gap: 24px !important;

  align-items: start !important;

  margin-bottom: 24px !important;
  padding: 28px !important;

  background:
    radial-gradient(circle at 0% 0%, rgba(237, 205, 118, 0.11), transparent 36%),
    linear-gradient(135deg, rgba(15, 24, 17, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(237, 205, 118, 0.15) !important;
  border-radius: 26px !important;

  box-shadow: 0 22px 46px rgba(0, 0, 0, 0.24) !important;
}

.mars-about-balance-copy h3 {
  margin: 0 0 12px !important;

  color: #ffffff !important;

  font-size: clamp(30px, 2.6vw, 44px) !important;
  font-weight: 950 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.7px !important;
}

.mars-about-balance-copy p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.76) !important;

  font-size: 15px !important;
  line-height: 1.62 !important;
}

.mars-about-balance-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.mars-about-balance-grid article {
  padding: 18px !important;

  background: rgba(255, 255, 255, 0.045) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 16px !important;
}

.mars-about-balance-grid strong {
  display: block !important;

  margin-bottom: 8px !important;

  color: #ffffff !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

.mars-about-balance-grid p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.72) !important;

  font-size: 13px !important;
  line-height: 1.5 !important;
}

/* Hidden details */

.mars-about-more {
  margin: 0 !important;

  background:
    linear-gradient(135deg, rgba(13, 24, 20, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.24) !important;
  border-radius: 20px !important;

  overflow: hidden !important;
}

.mars-about-more summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;

  padding: 20px 24px !important;

  color: var(--green) !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;

  cursor: pointer !important;
  list-style: none !important;
}

.mars-about-more summary::-webkit-details-marker {
  display: none !important;
}

.mars-about-more summary::marker {
  display: none !important;
}

.mars-about-more[open] summary span {
  transform: rotate(45deg) !important;
}

.mars-about-more-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  padding: 0 24px 24px !important;
}

.mars-about-more-grid article {
  padding: 20px !important;

  background: rgba(255, 255, 255, 0.04) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 14px !important;
}

.mars-about-more-grid h3 {
  margin: 0 0 10px !important;

  color: #ffffff !important;

  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

.mars-about-more-grid p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.74) !important;

  font-size: 14px !important;
  line-height: 1.6 !important;
}

/* Responsive */

@media (max-width: 1280px) {

  .mars-about-hero,
  .mars-about-balance {
    grid-template-columns: 1fr !important;
  }

  .mars-about-pillars {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .mars-about-visual {
    min-height: 360px !important;
  }

  .mars-about-visual img {
    width: 100% !important;
  }

}

@media (max-width: 980px) {

  .mars-about {
    width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .mars-about-more-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

}

@media (max-width: 680px) {

  .mars-about {
    margin-top: 80px !important;
  }

  .mars-about-hero,
  .mars-about-balance {
    padding: 22px !important;
  }

  .mars-about-pillars,
  .mars-about-balance-grid,
  .mars-about-more-grid {
    grid-template-columns: 1fr !important;
  }

  .mars-about-actions a {
    width: 100% !important;
  }

}

/* =====================================================
   END 28MARS — ABOUT SECTION
===================================================== */
/* =====================================================
   28MARS — ABOUT COMPACT BALANCE FIX
   Removes empty gaps in About section
   INSERT AT THE VERY END OF style.css
===================================================== */

/* Make About balance block compact instead of tall */
.mars-about-balance {
  display: block !important;

  padding: 28px !important;

  min-height: 0 !important;
}

/* Top row: heading + intro in two columns */
.mars-about-balance-copy {
  display: grid !important;
  grid-template-columns: minmax(360px, 0.7fr) minmax(0, 1.3fr) !important;
  gap: 26px !important;

  align-items: start !important;

  margin-bottom: 22px !important;
}

.mars-about-balance-copy .mars-about-kicker {
  grid-column: 1 / -1 !important;
  margin-bottom: 0 !important;
}

.mars-about-balance-copy h3 {
  margin: 0 !important;

  max-width: 620px !important;

  font-size: clamp(32px, 2.8vw, 48px) !important;
  line-height: 1.06 !important;
}

.mars-about-balance-copy p {
  margin: 0 !important;

  max-width: none !important;

  font-size: 15px !important;
  line-height: 1.58 !important;
}

/* Four cards become one balanced horizontal row */
.mars-about-balance-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.mars-about-balance-grid article {
  min-height: auto !important;

  padding: 18px !important;

  display: block !important;
}

.mars-about-balance-grid strong {
  margin-bottom: 8px !important;

  font-size: 15px !important;
  line-height: 1.22 !important;
}

.mars-about-balance-grid p {
  font-size: 13px !important;
  line-height: 1.48 !important;
}

/* Slightly tighten top pillar cards too */
.mars-about-pillars article {
  min-height: auto !important;
  padding: 22px !important;
}

.mars-about-pillars h3 {
  font-size: 20px !important;
}

.mars-about-pillars p {
  font-size: 13px !important;
  line-height: 1.5 !important;
}

/* Reduce distance before FAQ */
.mars-about {
  margin-bottom: 70px !important;
}

/* Responsive */
@media (max-width: 1280px) {

  .mars-about-balance-copy {
    grid-template-columns: 1fr !important;
  }

  .mars-about-balance-copy h3 {
    max-width: none !important;
  }

  .mars-about-balance-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

}

@media (max-width: 680px) {

  .mars-about-balance {
    padding: 22px !important;
  }

  .mars-about-balance-grid {
    grid-template-columns: 1fr !important;
  }

}

/* =====================================================
   END 28MARS — ABOUT COMPACT BALANCE FIX
===================================================== */
/* =====================================================
   28MARS — FINAL GLOBAL READABILITY + WIDTH FIX
   INSERT AT THE VERY END OF style.css
===================================================== */

/* 1. Return normal readable page width */
.gm-library,
.mars-bonuses,
.mars-vip,
.mars-banking,
.mars-account,
.mars-mobile,
.mars-about {
  width: min(1500px, calc(100vw - 64px)) !important;
  max-width: none !important;

  margin-left: auto !important;
  margin-right: auto !important;
}

/* 2. Main section spacing */
.mars-bonuses,
.mars-vip,
.mars-banking,
.mars-account,
.mars-mobile,
.mars-about {
  margin-top: 96px !important;
}

/* 3. Normal readable paragraph text everywhere */
.gm-library p,
.mars-bonuses p,
.mars-vip p,
.mars-banking p,
.mars-account p,
.mars-mobile p,
.mars-about p {
  color: rgba(255, 255, 255, 0.84) !important;

  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.68 !important;

  letter-spacing: -0.01em !important;
}

/* 4. Main intro text should be bigger */
.gm-heading .gm-lead,
.gm-panel-intro,
.gm-category-intro,
.mars-bonuses-copy p,
.mars-bonuses-intro p,
.mars-vip-copy p,
.mars-banking-copy p,
.mars-account-copy p,
.mars-mobile-copy > p,
.mars-about-copy p {
  color: rgba(255, 255, 255, 0.88) !important;

  font-size: 17px !important;
  font-weight: 500 !important;
  line-height: 1.72 !important;
}

/* 5. Card text: not tiny anymore */
.gm-card-copy,
.gm-description dd,
.mars-bonus-card p,
.mars-bonus-card li,
.mars-vip-level p,
.mars-vip-level li,
.mars-vip-path-grid p,
.mars-banking-method-card p,
.mars-banking-flow-grid p,
.mars-banking-more-grid p,
.mars-account-strip p,
.mars-account-flow-list p,
.mars-account-protection p,
.mars-account-more-grid p,
.mars-mobile-points p,
.mars-mobile-use-grid p,
.mars-mobile-more-grid p,
.mars-about-pillars p,
.mars-about-balance-grid p,
.mars-about-more-grid p {
  color: rgba(255, 255, 255, 0.80) !important;

  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.62 !important;
}

/* 6. Tables should also be readable */
.mars-banking-table th,
.mars-banking-table td,
.mars-vip-table th,
.mars-vip-table td {
  color: rgba(255, 255, 255, 0.84) !important;

  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.48 !important;
}

.mars-banking-table tbody th,
.mars-vip-table tbody th {
  color: #ffffff !important;

  font-size: 15px !important;
  font-weight: 900 !important;
}

/* 7. Game card names and hints */
.gm-name {
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

.gm-hint {
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

/* 8. Description blocks inside opened game cards */
.gm-rule dt {
  color: var(--gold) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;

  letter-spacing: 0.8px !important;
}

.gm-rule dd {
  font-size: 15px !important;
  line-height: 1.62 !important;
}

/* 9. Headings stay strong but not ridiculous */
.gm-heading h2,
.mars-bonuses-copy h2,
.mars-bonuses-title-block h2,
.mars-vip-copy h2,
.mars-banking-copy h2,
.mars-account-copy h2,
.mars-mobile-copy h2,
.mars-about-copy h2 {
  color: #ffffff !important;

  font-weight: 950 !important;
  letter-spacing: -1.4px !important;
  line-height: 1.04 !important;
}

/* 10. Smaller card headings */
.mars-bonus-card h3,
.mars-banking-method-card h3,
.mars-account-panel h3,
.mars-mobile-points h3,
.mars-about-pillars h3 {
  color: #ffffff !important;

  font-size: 22px !important;
  font-weight: 900 !important;
  line-height: 1.18 !important;
  letter-spacing: -0.02em !important;
}

/* 11. Stop over-wide lines in text-heavy blocks */
.gm-heading .gm-lead,
.gm-panel-intro,
.gm-category-intro,
.mars-bonuses-copy p,
.mars-bonuses-intro p,
.mars-vip-copy p,
.mars-banking-copy p,
.mars-account-copy p,
.mars-mobile-copy > p,
.mars-about-copy p,
.mars-about-balance-copy p,
.mars-mobile-use-copy p,
.mars-banking-table-copy p,
.mars-banking-flow-copy p,
.mars-account-flow-copy p,
.mars-vip-path-copy p {
  max-width: 1050px !important;
}

/* 12. Labels/kickers readable but still decorative */
.gm-eyebrow,
.mars-bonuses-kicker,
.mars-vip-kicker,
.mars-banking-kicker,
.mars-account-kicker,
.mars-mobile-kicker,
.mars-about-kicker,
.mars-bonus-label span,
.mars-vip-summary span,
.mars-vip-level span,
.mars-banking-limit-card span,
.mars-account-strip span,
.mars-mobile-points span,
.mars-about-pillars span {
  color: var(--gold) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;

  letter-spacing: 2.4px !important;
  text-transform: uppercase !important;
}

/* 13. Better button readability */
.gm-tab,
.theme-btn,
.site-btn,
.mars-about-actions a {
  font-size: 15px !important;
  font-weight: 900 !important;
}

/* 14. Mobile section: reduce image height a little for balance */
.mars-mobile-image {
  min-height: 640px !important;
  max-height: 720px !important;
}

/* 15. Mobile right panel should not look empty */
.mars-mobile-copy {
  min-height: auto !important;
}

.mars-mobile-points article {
  min-height: auto !important;
}

/* 16. About compact symmetry */
.mars-about-balance {
  min-height: auto !important;
}

.mars-about-balance-grid article,
.mars-about-pillars article {
  min-height: auto !important;
}

/* 17. Smooth readable rendering */
body,
.gm-library,
.mars-bonuses,
.mars-vip,
.mars-banking,
.mars-account,
.mars-mobile,
.mars-about {
  text-rendering: optimizeLegibility !important;
  -webkit-font-smoothing: antialiased !important;
}

/* Responsive */
@media (max-width: 980px) {

  .gm-library,
  .mars-bonuses,
  .mars-vip,
  .mars-banking,
  .mars-account,
  .mars-mobile,
  .mars-about {
    width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .gm-library p,
  .mars-bonuses p,
  .mars-vip p,
  .mars-banking p,
  .mars-account p,
  .mars-mobile p,
  .mars-about p {
    font-size: 16px !important;
  }

}

@media (max-width: 680px) {

  .gm-heading .gm-lead,
  .gm-panel-intro,
  .gm-category-intro,
  .mars-bonuses-copy p,
  .mars-bonuses-intro p,
  .mars-vip-copy p,
  .mars-banking-copy p,
  .mars-account-copy p,
  .mars-mobile-copy > p,
  .mars-about-copy p {
    font-size: 16px !important;
    line-height: 1.65 !important;
  }

  .mars-mobile-image {
    min-height: 520px !important;
  }

}

/* =====================================================
   END 28MARS — FINAL GLOBAL READABILITY + WIDTH FIX
===================================================== */
/* =====================================================
   28MARS — FAQ SECTION
   CSS ONLY — INSERT AT THE VERY END OF style.css
===================================================== */

.mars-faq {
  width: min(1500px, calc(100vw - 64px)) !important;
  max-width: none !important;

  margin: 110px auto 0 !important;
  padding: 0 28px 90px !important;

  color: #ffffff !important;
}

.mars-faq * {
  box-sizing: border-box !important;
}

/* Header */

.mars-faq-head {
  display: grid !important;
  grid-template-columns: minmax(320px, 0.72fr) minmax(0, 1.28fr) !important;
  gap: 34px !important;

  align-items: end !important;

  margin-bottom: 26px !important;
  padding: 32px !important;

  background:
    radial-gradient(circle at 92% 20%, rgba(142, 232, 95, 0.13), transparent 34%),
    radial-gradient(circle at 0% 100%, rgba(237, 205, 118, 0.10), transparent 36%),
    linear-gradient(135deg, rgba(12, 25, 18, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.18) !important;
  border-radius: 28px !important;

  box-shadow:
    0 26px 58px rgba(0, 0, 0, 0.28),
    inset 0 0 0 1px rgba(255, 255, 255, 0.035) !important;
}

.mars-faq-kicker {
  margin: 0 0 12px !important;

  color: var(--gold) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  letter-spacing: 4px !important;
  text-transform: uppercase !important;
}

.mars-faq-head h2 {
  margin: 0 !important;

  color: #ffffff !important;

  font-size: clamp(42px, 4vw, 68px) !important;
  font-weight: 950 !important;
  line-height: 1.03 !important;
  letter-spacing: -1.5px !important;
}

.mars-faq-head > p {
  margin: 0 !important;

  max-width: 980px !important;

  color: rgba(255, 255, 255, 0.84) !important;

  font-size: 17px !important;
  font-weight: 500 !important;
  line-height: 1.68 !important;
}

/* Columns */

.mars-faq-columns {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;

  align-items: start !important;
}

.mars-faq-column {
  padding: 22px !important;

  background:
    linear-gradient(145deg, rgba(12, 24, 18, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 24px !important;

  box-shadow: 0 22px 46px rgba(0, 0, 0, 0.24) !important;
}

.mars-faq-column h3 {
  margin: 0 0 16px !important;

  color: #ffffff !important;

  font-size: 26px !important;
  font-weight: 950 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.5px !important;
}

/* FAQ items */

.mars-faq details {
  margin: 0 0 10px !important;

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.055),
      rgba(255, 255, 255, 0.026)
    ) !important;

  border: 1px solid rgba(255, 255, 255, 0.085) !important;
  border-radius: 16px !important;

  overflow: hidden !important;

  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    background 0.2s ease !important;
}

.mars-faq details:last-child {
  margin-bottom: 0 !important;
}

.mars-faq details[open] {
  border-color: rgba(142, 232, 95, 0.42) !important;

  background:
    linear-gradient(
      180deg,
      rgba(142, 232, 95, 0.075),
      rgba(255, 255, 255, 0.028)
    ) !important;

  box-shadow:
    0 14px 32px rgba(0, 0, 0, 0.24),
    inset 0 0 0 1px rgba(142, 232, 95, 0.08) !important;
}

.mars-faq summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;

  min-height: 68px !important;

  padding: 18px 20px !important;

  color: #ffffff !important;

  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;

  cursor: pointer !important;
  list-style: none !important;
}

.mars-faq summary::-webkit-details-marker {
  display: none !important;
}

.mars-faq summary::marker {
  display: none !important;
}

.mars-faq summary span {
  flex: 0 0 auto !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 30px !important;
  height: 30px !important;

  color: #061008 !important;
  background: var(--green) !important;

  border-radius: 50% !important;

  font-size: 20px !important;
  font-weight: 500 !important;
  line-height: 1 !important;

  transition: transform 0.2s ease !important;
}

.mars-faq details[open] summary span {
  transform: rotate(45deg) !important;
}

.mars-faq-answer {
  padding: 0 20px 20px !important;
}

.mars-faq-answer p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.80) !important;

  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.62 !important;
}

/* Responsive */

@media (max-width: 980px) {

  .mars-faq {
    width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .mars-faq-head {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }

  .mars-faq-columns {
    grid-template-columns: 1fr !important;
  }

}

@media (max-width: 680px) {

  .mars-faq {
    margin-top: 80px !important;
  }

  .mars-faq-head,
  .mars-faq-column {
    padding: 22px !important;
  }

  .mars-faq summary {
    min-height: 62px !important;

    padding: 16px 17px !important;

    font-size: 15px !important;
  }

  .mars-faq-answer {
    padding: 0 17px 17px !important;
  }

}

/* =====================================================
   END 28MARS — FAQ SECTION
===================================================== */

/* =====================================================
   28MARS — ACCOUNT PRACTICAL PROTECTION COMPACT FIX
   Removes empty gaps in Account protection cards
   INSERT AT THE VERY END OF style.css
===================================================== */

.mars-account-protection {
  display: grid !important;
  grid-template-columns: minmax(360px, 0.62fr) minmax(0, 1.38fr) !important;
  gap: 18px !important;

  align-items: start !important;

  margin-bottom: 22px !important;
}

/* Main text block on the left */
.mars-account-protection-main {
  grid-column: 1 !important;
  grid-row: 1 / span 3 !important;

  min-height: auto !important;
  height: auto !important;

  padding: 26px !important;

  align-self: stretch !important;
}

/* The 3 practical cards on the right */
.mars-account-protection article:not(.mars-account-protection-main) {
  grid-column: 2 !important;

  min-height: auto !important;
  height: auto !important;

  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  column-gap: 16px !important;
  row-gap: 6px !important;

  align-items: start !important;

  padding: 18px 20px !important;
}

/* Icon left */
.mars-account-protection article:not(.mars-account-protection-main) .mars-account-icon {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;

  margin: 0 !important;
}

/* Title and text right */
.mars-account-protection article:not(.mars-account-protection-main) h4 {
  grid-column: 2 !important;
  grid-row: 1 !important;

  margin: 0 !important;

  font-size: 18px !important;
  line-height: 1.2 !important;
}

.mars-account-protection article:not(.mars-account-protection-main) p {
  grid-column: 2 !important;
  grid-row: 2 !important;

  margin: 0 !important;

  font-size: 14px !important;
  line-height: 1.5 !important;
}

/* Make left heading less aggressively tall */
.mars-account-protection-main h3 {
  max-width: 440px !important;

  font-size: clamp(34px, 3vw, 48px) !important;
  line-height: 1.08 !important;
}

.mars-account-protection-main p {
  max-width: 480px !important;

  font-size: 15px !important;
  line-height: 1.62 !important;
}

/* Responsive */
@media (max-width: 980px) {

  .mars-account-protection {
    grid-template-columns: 1fr !important;
  }

  .mars-account-protection-main,
  .mars-account-protection article:not(.mars-account-protection-main) {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

}

@media (max-width: 620px) {

  .mars-account-protection article:not(.mars-account-protection-main) {
    grid-template-columns: 1fr !important;
  }

  .mars-account-protection article:not(.mars-account-protection-main) .mars-account-icon,
  .mars-account-protection article:not(.mars-account-protection-main) h4,
  .mars-account-protection article:not(.mars-account-protection-main) p {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  .mars-account-protection article:not(.mars-account-protection-main) .mars-account-icon {
    margin-bottom: 12px !important;
  }

}

/* =====================================================
   END 28MARS — ACCOUNT PRACTICAL PROTECTION COMPACT FIX
===================================================== */
/* =====================================================
   28MARS — FOOTER SECTION
   CSS ONLY — INSERT AT THE VERY END OF style.css
===================================================== */

.mars-footer {
  width: 100% !important;

  margin: 110px 0 0 !important;
  padding: 0 !important;

  color: #ffffff !important;

  background:
    radial-gradient(circle at 18% 0%, rgba(142, 232, 95, 0.13), transparent 34%),
    radial-gradient(circle at 86% 100%, rgba(237, 205, 118, 0.10), transparent 36%),
    linear-gradient(180deg, rgba(7, 15, 10, 0.98), rgba(1, 5, 4, 1)) !important;

  border-top: 1px solid rgba(142, 232, 95, 0.18) !important;
}

.mars-footer * {
  box-sizing: border-box !important;
}

.mars-footer-main {
  width: min(1500px, calc(100vw - 64px)) !important;

  margin: 0 auto !important;
  padding: 46px 28px 30px !important;

  display: grid !important;
  grid-template-columns: minmax(300px, 0.85fr) minmax(0, 1.15fr) !important;
  gap: 42px !important;

  align-items: start !important;
}

/* Brand */

.mars-footer-brand {
  padding: 28px !important;

  background:
    linear-gradient(145deg, rgba(13, 26, 18, 0.96), rgba(4, 10, 7, 0.96)) !important;

  border: 1px solid rgba(142, 232, 95, 0.18) !important;
  border-radius: 24px !important;

  box-shadow:
    0 22px 46px rgba(0, 0, 0, 0.24),
    inset 0 0 0 1px rgba(255, 255, 255, 0.035) !important;
}

.mars-footer-logo {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;

  margin-bottom: 18px !important;

  text-decoration: none !important;
}

.mars-footer-logo-main {
  display: block !important;

  color: var(--green) !important;

  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 44px !important;
  font-weight: 900 !important;
  line-height: 0.95 !important;
  letter-spacing: -1.5px !important;
}

.mars-footer-logo-main span {
  color: #ffffff !important;
}

.mars-footer-logo small {
  display: block !important;

  margin-top: 7px !important;
  padding-left: 4px !important;

  color: var(--gold) !important;

  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1 !important;

  letter-spacing: 8px !important;
}

.mars-footer-brand p,
.mars-footer-note p,
.mars-footer-bottom p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.78) !important;

  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.62 !important;
}

.mars-footer-brand p {
  max-width: 520px !important;
  margin-bottom: 22px !important;
}

.mars-footer-cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-height: 48px !important;

  padding: 14px 24px !important;

  color: #061008 !important;
  background: var(--green) !important;

  border-radius: 999px !important;

  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-decoration: none !important;

  box-shadow: 0 14px 28px rgba(142, 232, 95, 0.20) !important;
}

/* Navigation */

.mars-footer-nav {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

.mars-footer-group {
  padding: 22px !important;

  background:
    linear-gradient(145deg, rgba(12, 23, 17, 0.92), rgba(4, 10, 7, 0.92)) !important;

  border: 1px solid rgba(255, 255, 255, 0.09) !important;
  border-radius: 20px !important;
}

.mars-footer-group h2 {
  margin: 0 0 15px !important;

  color: var(--gold) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;

  letter-spacing: 2.4px !important;
  text-transform: uppercase !important;
}

.mars-footer-group a {
  display: block !important;

  padding: 8px 0 !important;

  color: rgba(255, 255, 255, 0.78) !important;

  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  text-decoration: none !important;

  transition:
    color 0.2s ease,
    transform 0.2s ease !important;
}

.mars-footer-group a:hover {
  color: var(--green) !important;
  transform: translateX(4px) !important;
}

/* Note */

.mars-footer-note {
  width: min(1500px, calc(100vw - 64px)) !important;

  margin: 0 auto !important;
  padding: 0 28px 28px !important;
}

.mars-footer-note p {
  padding: 20px 22px !important;

  background: rgba(255, 255, 255, 0.035) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 18px !important;
}

/* Bottom */

.mars-footer-bottom {
  width: min(1500px, calc(100vw - 64px)) !important;

  margin: 0 auto !important;
  padding: 22px 28px 34px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;

  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.mars-footer-bottom button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;

  min-height: 42px !important;

  padding: 11px 18px !important;

  color: #061008 !important;
  background: var(--green) !important;

  border: 0 !important;
  border-radius: 999px !important;

  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;

  cursor: pointer !important;
}

.mars-footer-bottom button span {
  font-size: 16px !important;
  line-height: 1 !important;
}

/* Responsive */

@media (max-width: 1180px) {

  .mars-footer-main {
    grid-template-columns: 1fr !important;
  }

  .mars-footer-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

}

@media (max-width: 680px) {

  .mars-footer-main,
  .mars-footer-note,
  .mars-footer-bottom {
    width: 100% !important;

    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .mars-footer-nav {
    grid-template-columns: 1fr !important;
  }

  .mars-footer-bottom {
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  .mars-footer-bottom button {
    width: 100% !important;
  }

}

/* =====================================================
   END 28MARS — FOOTER SECTION
===================================================== */
/* =====================================================
   28MARS — HEADER FINAL STRUCTURE
   INSERT AT THE VERY END OF style.css
===================================================== */

.site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 999 !important;

  width: 100% !important;

  background: rgba(2, 8, 6, 0.96) !important;
  backdrop-filter: blur(14px) !important;

  border-bottom: 1px solid rgba(142, 232, 95, 0.16) !important;
}

.site-header__inner {
  width: min(1500px, calc(100vw - 64px)) !important;
  max-width: none !important;

  margin: 0 auto !important;
  padding: 18px 28px !important;

  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  gap: 34px !important;

  align-items: center !important;
}

/* Logo */

.site-logo {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;

  text-decoration: none !important;
}

.site-logo__main {
  color: var(--green) !important;

  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 42px !important;
  font-weight: 900 !important;
  line-height: 0.9 !important;
  letter-spacing: -1.4px !important;
}

.site-logo__number {
  color: #ffffff !important;
}

.site-logo__sub {
  display: block !important;

  margin-top: 8px !important;
  padding-left: 5px !important;

  color: var(--gold) !important;

  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1 !important;

  letter-spacing: 8px !important;
}

/* Navigation */

.site-nav {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;

  gap: 18px !important;

  min-width: 0 !important;
}

.site-nav a {
  color: rgba(255, 255, 255, 0.88) !important;

  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;

  text-decoration: none !important;
  white-space: nowrap !important;

  transition:
    color 0.2s ease,
    transform 0.2s ease !important;
}

.site-nav a:hover {
  color: var(--green) !important;
  transform: translateY(-1px) !important;
}

/* Button */

.site-header__action {
  display: flex !important;
  justify-content: flex-end !important;
}

.site-btn--header {
  min-height: 52px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 15px 28px !important;

  color: #061008 !important;
  background: var(--green) !important;

  border-radius: 999px !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap !important;

  box-shadow: 0 14px 28px rgba(142, 232, 95, 0.20) !important;
}

/* Tablet */

@media (max-width: 1180px) {

  .site-header__inner {
    grid-template-columns: 1fr auto !important;
    gap: 20px !important;
  }

  .site-nav {
    grid-column: 1 / -1 !important;
    order: 3 !important;

    justify-content: flex-start !important;

    gap: 12px !important;
  }

  .site-nav a {
    padding: 8px 10px !important;

    background: rgba(255, 255, 255, 0.045) !important;

    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 999px !important;
  }

}

/* Mobile */

@media (max-width: 680px) {

  .site-header__inner {
    width: 100% !important;

    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .site-logo__main {
    font-size: 34px !important;
  }

  .site-logo__sub {
    font-size: 9px !important;
    letter-spacing: 6px !important;
  }

  .site-btn--header {
    min-height: 44px !important;
    padding: 12px 18px !important;

    font-size: 13px !important;
  }

  .site-nav {
    overflow-x: auto !important;
    flex-wrap: nowrap !important;

    padding-bottom: 4px !important;

    scrollbar-width: none !important;
  }

  .site-nav::-webkit-scrollbar {
    display: none !important;
  }

}

/* =====================================================
   END 28MARS — HEADER FINAL STRUCTURE
===================================================== */
/* =====================================================
   28MARS — LEGAL PAGES
   Cookies / Privacy / Terms / Responsible Gambling
===================================================== */

.mars-legal {
  width: min(1180px, calc(100vw - 64px)) !important;
  max-width: none !important;

  margin: 80px auto 0 !important;
  padding: 0 28px 80px !important;

  color: #ffffff !important;
}

.mars-legal * {
  box-sizing: border-box !important;
}

.mars-legal-heading {
  margin-bottom: 26px !important;
  padding: 34px !important;

  background:
    radial-gradient(circle at 92% 12%, rgba(142, 232, 95, 0.14), transparent 34%),
    radial-gradient(circle at 0% 100%, rgba(237, 205, 118, 0.10), transparent 38%),
    linear-gradient(135deg, rgba(12, 25, 18, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(142, 232, 95, 0.18) !important;
  border-radius: 28px !important;

  box-shadow:
    0 26px 58px rgba(0, 0, 0, 0.28),
    inset 0 0 0 1px rgba(255, 255, 255, 0.035) !important;
}

.mars-legal-kicker {
  margin: 0 0 12px !important;

  color: var(--gold) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  letter-spacing: 4px !important;
  text-transform: uppercase !important;
}

.mars-legal-heading h1 {
  margin: 0 0 14px !important;

  color: #ffffff !important;

  font-size: clamp(44px, 4.4vw, 74px) !important;
  font-weight: 950 !important;
  line-height: 1.03 !important;
  letter-spacing: -1.6px !important;
}

.mars-legal-heading p:last-child {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.84) !important;

  font-size: 18px !important;
  font-weight: 500 !important;
  line-height: 1.58 !important;
}

.mars-legal-body {
  display: grid !important;
  gap: 16px !important;
}

.mars-legal-body section {
  padding: 26px !important;

  background:
    linear-gradient(145deg, rgba(12, 24, 18, 0.98), rgba(5, 12, 9, 0.98)) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 22px !important;

  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.22) !important;
}

.mars-legal-body h2 {
  margin: 0 0 12px !important;

  color: #ffffff !important;

  font-size: 28px !important;
  font-weight: 950 !important;
  line-height: 1.12 !important;
  letter-spacing: -0.5px !important;
}

.mars-legal-body p {
  margin: 0 0 12px !important;

  color: rgba(255, 255, 255, 0.82) !important;

  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.68 !important;
}

.mars-legal-body p:last-child {
  margin-bottom: 0 !important;
}

.mars-legal-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;

  margin-top: 18px !important;
}

.mars-legal-links a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-height: 44px !important;

  padding: 12px 18px !important;

  color: #061008 !important;
  background: var(--green) !important;

  border-radius: 999px !important;

  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.mars-legal-links a:nth-child(n + 2) {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.055) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
}

@media (max-width: 680px) {
  .mars-legal {
    width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .mars-legal-heading,
  .mars-legal-body section {
    padding: 22px !important;
  }

  .mars-legal-links a {
    width: 100% !important;
  }
}

/* =====================================================
   END 28MARS — LEGAL PAGES
===================================================== */


