:root {
  --body-bg-color: #f4f7fa;
  --body-text-color: #222222;
  --heading-color: #384949;
  --hero-gradient1: #fd4755;
  --hero-gradient2: #bf4b53;
  --footer-bg-color: #ffffff;
  --link-color: #bf4b53;
  --header-bg-color: #ffffff;
  --font-family: 'Lato', Arial, sans-serif;
  --nav-link-color: #fd4755;
  --footer-text-color: #000000;
  --header-text-color: #ffffffff;
}

:root {
  /* Dice (0°) */
  --bg-dice-0: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140' opacity='0.08'><g transform='translate(10,10)'><rect x='0' y='0' width='120' height='120' rx='18' ry='18' fill='%23384949'/><circle cx='30' cy='30' r='7' fill='%23ffffff'/><circle cx='60' cy='60' r='7' fill='%23ffffff'/><circle cx='90' cy='90' r='7' fill='%23ffffff'/></g></svg>");

  /* Dice (rotated +12°) */
  --bg-dice-12: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120' opacity='0.08'><g transform='translate(60,60) rotate(12) translate(-50,-50)'><rect x='0' y='0' width='100' height='100' rx='16' ry='16' fill='%23384949'/><circle cx='25' cy='25' r='6' fill='%23ffffff'/><circle cx='50' cy='50' r='6' fill='%23ffffff'/><circle cx='75' cy='75' r='6' fill='%23ffffff'/></g></svg>");

  /* Poker chip (0°) */
  --bg-chip-0: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140' opacity='0.07'><g transform='translate(70,70)'><circle r='60' fill='%23384949'/><circle r='40' fill='none' stroke='%23ffffff' stroke-width='6'/><g stroke='%23ffffff' stroke-width='8'><line x1='-60' y1='0' x2='-45' y2='0'/><line x1='60' y1='0' x2='45' y2='0'/><line x1='0' y1='-60' x2='0' y2='-45'/><line x1='0' y1='60' x2='0' y2='45'/><line x1='-42' y1='-42' x2='-32' y2='-32'/><line x1='42' y1='42' x2='32' y2='32'/><line x1='-42' y1='42' x2='-32' y2='32'/><line x1='42' y1='-42' x2='32' y2='-32'/></g></g></svg>");

  /* Poker chip (rotated -18°) */
  --bg-chip--18: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120' opacity='0.07'><g transform='translate(60,60) rotate(-18)'><circle r='50' fill='%23384949'/><circle r='32' fill='none' stroke='%23ffffff' stroke-width='5'/><g stroke='%23ffffff' stroke-width='7'><line x1='-50' y1='0' x2='-38' y2='0'/><line x1='50' y1='0' x2='38' y2='0'/><line x1='0' y1='-50' x2='0' y2='-38'/><line x1='0' y1='50' x2='0' y2='38'/></g></g></svg>");

  /* Playing card (Ace spade, +8°) */
  --bg-card-8: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='220' viewBox='0 0 160 220' opacity='0.06'><g transform='translate(80,110) rotate(8) translate(-65,-95)'><rect x='0' y='0' width='130' height='190' rx='16' ry='16' fill='%23ffffff' stroke='%23384949' stroke-width='4'/><path d='M65 70 C55 50, 25 50, 25 80 C25 100, 65 125, 65 145 C65 125, 105 100, 105 80 C105 50, 75 50, 65 70 Z' fill='%23384949'/></g></svg>");

  /* Playing card (Heart, -10°) */
  --bg-card--10: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='150' height='210' viewBox='0 0 150 210' opacity='0.06'><g transform='translate(75,105) rotate(-10) translate(-60,-90)'><rect x='0' y='0' width='120' height='180' rx='14' ry='14' fill='%23ffffff' stroke='%23384949' stroke-width='4'/><path d='M60 120 L30 90 a22 22 0 1 1 30 -32 a22 22 0 1 1 30 32 z' fill='%23384949'/></g></svg>");

  /* Roulette wheel badge (+5°) */
  --bg-roulette-5: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140' opacity='0.06'><g transform='translate(70,70) rotate(5)'><circle r='60' fill='%23384949'/><circle r='46' fill='%23ffffff'/><circle r='12' fill='%23384949'/><g fill='none' stroke='%23384949' stroke-width='6'><circle r='58'/><circle r='34'/></g></g></svg>");

  /* Coin (+15°) */
  --bg-coin-15: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='110' height='110' viewBox='0 0 110 110' opacity='0.06'><g transform='translate(55,55) rotate(15)'><circle r='44' fill='%23ffffff' stroke='%23384949' stroke-width='6'/><circle r='26' fill='none' stroke='%23384949' stroke-width='6'/></g></svg>");

  /* Dice small (-14°) */
  --bg-dice--14: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100' opacity='0.08'><g transform='translate(50,50) rotate(-14) translate(-40,-40)'><rect x='0' y='0' width='80' height='80' rx='12' ry='12' fill='%23384949'/><circle cx='20' cy='20' r='5' fill='%23ffffff'/><circle cx='40' cy='40' r='5' fill='%23ffffff'/><circle cx='60' cy='60' r='5' fill='%23ffffff'/></g></svg>");
}

body {
  background-color: var(--body-bg-color) !important;
  color: var(--body-text-color) !important;
  font-family: var(--font-family);
  line-height: 1.6;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  background-image:
    var(--bg-dice-0),
    var(--bg-chip-0),
    var(--bg-card-8),
    var(--bg-roulette-5),
    var(--bg-dice-12),
    var(--bg-card--10),
    var(--bg-chip--18),
    var(--bg-coin-15),
    var(--bg-dice--14),
    var(--bg-coin-15);

  /* No repeat; each one placed individually */
  background-repeat:
    no-repeat, no-repeat, no-repeat, no-repeat, no-repeat,
    no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;

  /* Individual sizes (desktop defaults) */
  background-size:
    140px, 140px, 160px 220px, 140px, 120px,
    150px 210px, 120px, 110px, 100px, 90px;

  /* Scatter positions (viewport-relative) */
  background-position:
    6% 12%,
    /* dice */
    82% 10%,
    /* chip */
    14% 70%,
    /* card spade */
    88% 68%,
    /* roulette */
    28% 24%,
    /* dice rotated */
    68% 78%,
    /* card heart */
    50% 12%,
    /* chip rotated */
    10% 88%,
    /* coin */
    90% 30%,
    /* dice small */
    40% 92%;
  /* coin small */

  /* Keep them steady while scrolling */
  background-attachment: fixed;
}

h1 {
  font-size: clamp(2rem, 4vw, 2.5rem) !important;
}

h2 {
  font-size: clamp(1.6rem, 3vw, 2rem) !important;
  text-align: center;
  font-weight: 800;
  font-style: italic;
}

h3 {
  font-size: clamp(1.4rem, 3vw, 1.7rem) !important;
  font-weight: 700;
}

p {
  margin-bottom: 0.5rem !important;
}

section {
  padding: 40px 0;
  scroll-margin-top: 70px;
}


h2 {
  color: var(--heading-color) !important;
}

.content-area a {
  color: var(--link-color) !important;
  text-decoration: none !important;
}

.content-area a:hover {
  color: var(--link-color) !important;
  opacity: 0.8;
}

.sidebar-page-list {
  padding: 0;
  margin: 0;
  margin-bottom: 17px;
  width: 279px;
}

.sidebar-page-list li {
  list-style-type: disc;
  list-style-position: inside;
  color: var(--heading-color);
}

.sidebar-page-list li::marker {
  color: var(--link-color);
  font-size: 1.2em;
}

.sidebar-page-list li:last-child {
  border-bottom: none;
}

.sidebar-page-list li a {
  padding: 12px 0;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.3s ease;
  position: relative;
  color: var(--link-color);
}

.sidebar-page-list li a:hover {
  padding-left: 11px;
}

.error_page {
  min-height: 70vh;
}


.footer {
  background-color: var(--footer-bg-color);
  color: var(--footer-text-color);
}

.footer a {
  text-decoration: none;
  color: var(--link-color) !important;
}

.footer a:hover {
  color: var(--link-color) !important;
  opacity: 0.8;
}



.navbar {
  background-color: var(--header-bg-color) !important;
  position: sticky;
  top: 0;
  z-index: 1020;
}

.hero-section {
  padding: 115px 0 25px 0;
  position: relative;
  overflow: hidden;
  color: var(--header-text-color);
}

.hero-section.gradient-bg {
  background: linear-gradient(135deg, var(--hero-gradient1), var(--hero-gradient2));
}

.hero-section .container {
  position: relative;
  z-index: 2;
}

.navbar-light .navbar-nav .nav-link {
  color: var(--nav-link-color, #141414) !important;
}

.navbar-light .navbar-nav .nav-link.active {
  color: var(--link-color) !important;
  font-weight: bold;
}

/* Mobile nav */
@media (max-width: 1199.98px) {
  .navbar-collapse {
    position: fixed;
    top: 61px;
    left: 15px;
    right: 15px;
    background-color: color-mix(in srgb, var(--header-bg-color) 65%, transparent);
    backdrop-filter: blur(12px);
    border-radius: 12px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
    z-index: 9999;
    padding: 15px;
    margin: 0;
  }

  .navbar-nav {
    width: 100%;
  }

  .navbar-nav .nav-item {
    margin: 7px 0;
  }

  .navbar-nav .nav-item:hover {
    transform: translateY(-1px);
  }

  .navbar-nav .nav-link {
    font-size: 1.2rem;
    font-weight: 500;
    text-decoration: none;
    display: block;
    padding: 0;
  }

  .navbar-toggler {
    z-index: 10000;
    position: relative;
    border: var(--bs-border-width) solid var(--nav-link-color, #141414) !important;
  }
}

@media screen and (min-width: 1199.98px) {
  .dropdown-menu {
    top: 100%;
    left: 50% !important;
    transform: translateX(-50%);
  }
}

.navbar .dropdown-toggle::after {
  transition: transform .3s ease
}

.dropdown:hover .dropdown-toggle::after {
  transform: rotate(180deg)
}

.custom-dropdown {
  border: 0;
  box-shadow: 0 10px 40px rgba(0, 0, 0, .15);
  border-radius: 12px;
  padding: .5rem 0;
  margin-top: .5rem;
  min-width: 220px;
  background: color-mix(in srgb, var(--header-bg-color) 65%, transparent) !important;
  backdrop-filter: blur(12px)
}

.custom-dropdown .dropdown-item {
  padding: .75rem 1.5rem;
  transition: all .3s ease;
  color: var(--nav-link-color, #141414) !important;
  font-weight: 500;
  border-radius: 0;
  text-wrap: wrap
}

.custom-dropdown .dropdown-item:hover {
  color: #fff;
  background: color-mix(in srgb, var(--header-bg-color) 95%, transparent) !important;
}

.custom-dropdown .dropdown-item i {
  width: 16px;
  color: #6c757d;
  transition: color .3s ease
}

.custom-dropdown .dropdown-item:hover i {
  color: #fff
}

.dropdown-menu {
  opacity: 0;
  transition: all .3s ease;
  display: block;
  visibility: hidden
}

.dropdown-menu.show {
  opacity: 1;
  transform: translateY(0);
  visibility: visible
}

@media (min-width:1199.98px) {
  .custom-dropdown {
    max-width: 200px
  }
}

@media (max-width:1199.98px) {
  .custom-dropdown {
    display: none;
    background: #f8f9fa;
    box-shadow: none;
    border-radius: 0;
    margin-top: 0;
    border-top: 1px solid #dee2e6
  }

  .custom-dropdown .dropdown-item:hover {
    margin: 0;
    border-radius: 0;
    transform: none
  }
}

.dropdown-menu:hover,
.dropdown:hover .dropdown-menu {
  display: block !important;
  visibility: visible;
  opacity: 1
}

.dropdown-item.active,
.dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #91919131 !important;
}

.floating-rounded-navbar {
  background-color: var(--header-bg-color) !important;
  position: fixed !important;
  top: 15px !important;
  left: 7px !important;
  right: 7px !important;
  width: calc(100% - 11px) !important;
  z-index: 2000;
  border-radius: 21px;
  transition: all 0.3s ease;
}


@media (max-width: 1199.98px) {
  .floating-rounded-navbar .navbar-collapse {
    top: 85px !important;
  }
}

.navbar-brand {
  margin-right: 0 !important;
}



.contact-container {
  padding: 15px 21px;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
  color: black !important;
}

@media screen and (max-width: 768px) {
  .contact-container {
    width: 100%;
    padding: 15px;
  }
}

.contact-header {
  text-align: center;
  margin-bottom: 20px;
}

.contact-header i {
  font-size: 2rem;
  color: var(--hero-gradient1);
  margin-bottom: 10px;
}

.email-link {
  display: block;
  margin-top: 15px;
  text-align: center;
  font-weight: bold;
  color: var(--hero-gradient2);
  text-decoration: none;
}


.logo-celebrino {
  background: url('/images/celebrino.svg');
}

.bg-celebrino {
  background-color: #fff;
}

.logo-trickz {
  background: url('/images/trickz.svg');
}

.bg-trickz {
  background-color: #fff;
}

.logo-tsars {
  background: url('/images/tsars.svg');
}

.bg-tsars {
  background-color: #fff;
}

.logo-winnerz {
  background: url('/images/winnerz.png');
}

.bg-winnerz {
  background-color: #fff;
}

.logo-lumi {
  background: url('/images/lumi.svg');
}

.bg-lumi {
  background-color: #fff;
}

.logo-dream-vegas {
  background: url('/images/dream-vegas.svg');
}

.bg-dream-vegas {
  background-color: #fff;
}

.logo-barz {
  background: url('/images/barz.svg');
}

.bg-barz {
  background-color: #fff;
}

.logo-casilime {
  background: url('/images/casilime.svg');
}

.bg-casilime {
  background-color: #fff;
}

.logo-casimba {
  background: url('/images/casimba.svg');
}

.bg-casimba {
  background-color: #fff;
}

.logo-spinstation {
  background: url('/images/spinstation.svg');
}

.bg-spinstation {
  background-color: #fff;
}

[class*="logo-"] {
  display: block;
  text-indent: -9999px;
  text-align: left;
  background-size: 80%;
  background-position: center center !important;
  background-repeat: no-repeat;
}

[class*="brand-"][class*="bg-"] {
  margin: 0 auto;
  padding: 5px;
  border-radius: 4px;
  width: 220px;
  height: 150px;
}

.error-text {
  display: inline-block;
  font-size: 8rem;
  font-weight: 800;
  font-family: var(--font-family);
  color: var(--hero-gradient1);
  background: linear-gradient(135deg, var(--hero-gradient1), var(--hero-gradient2));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-transform: uppercase;
  letter-spacing: 4px;
  text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.25);
  margin: 20px 0;
}

.box {
  position: relative;
  padding: 1.5rem;
  border-radius: 20px;
  font-family: var(--font-family);
  color: var(--footer-bg-color);
  background: linear-gradient(135deg,
      var(--hero-gradient1),
      var(--hero-gradient2));
  box-shadow: 0 0 20px rgba(253, 71, 85, 0.6),
    0 12px 25px rgba(0, 0, 0, 0.3);
  overflow: hidden;
  height: 100%;
}

.box::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(circle at top left,
      rgba(255, 255, 255, 0.25),
      transparent 60%);
  pointer-events: none;
}

.box h3 {
  font-weight: 800;
  margin-bottom: 1rem;
  text-transform: uppercase;
  background: linear-gradient(90deg, var(--footer-bg-color), var(--body-bg-color));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
}

.box p {
  line-height: 1.7;
  color: var(--footer-bg-color);
  opacity: 0.95;
}

.box:hover {
  transform: translateY(-6px) scale(1.02);
  transition: all 0.35s ease;
  box-shadow: 0 0 28px rgba(191, 75, 83, 0.8),
    0 16px 35px rgba(0, 0, 0, 0.4);
}

.box a {
  color: var(--footer-text-color) !important;
}

.box a:hover {
  color: var(--footer-text-color) !important;
}