/* Beef Casino palette based on the supplied dark navy and neon-green reference. */
:root {
  --c-dark: #12151d;
  --c-base: #12161d;
  --c-surface: #192230;
  --c-surface-hover: #223047;
  --c-accent: #12eda4;
  --c-accent-hover: #55f7bf;
  --c-accent-secondary: #ff6b2d;
  --c-text: #f7f9fc;
  --c-text-secondary: #d6dce6;
  --c-text-muted: #9ea8b8;
  --c-border: #2e394a;
  --c-gold-gradient: linear-gradient(180deg, #27ffc0 0%, #08bb78 100%);
  --c-gold-gradient-hover: linear-gradient(180deg, #5fffd0 0%, #12d98f 100%);
  --color-btn-text: #07130f;
}

html,
body,
body .wrap,
body .section-block {
  background: #12161d !important;
  color: #d6dce6 !important;
}

.header-container,
.header-container .header,
.header-container .header .header__container,
footer.footer,
#mobileMenu.offcanvas,
#mobileMenu.offcanvas.offcanvas-end,
.mobile-menu,
.toc_navigation {
  background: #12151d !important;
  border-color: #293344 !important;
}

.header-container .header {
  box-shadow: 0 7px 24px rgba(0, 0, 0, .34) !important;
}

.header .primary_menu_desktop_ver > ul > li > a,
#mobileMenu .mobile-nav a,
footer.footer a {
  color: #dce2eb !important;
}

.header .primary_menu_desktop_ver > ul > li > a:hover,
.header .primary_menu_desktop_ver > ul > li.current-menu-item > a,
#mobileMenu .mobile-nav a:hover,
footer.footer a:hover,
.content-block a {
  color: #12eda4 !important;
}

.mobile-menu-button span { background: #f7f9fc !important; }

.welcome-section,
.section-block#hero .welcome-section {
  background: linear-gradient(135deg, #111722 0%, #151d29 58%, #0e131c 100%) !important;
  border-color: #293344 !important;
}

.promo-card,
.ent-card,
.game_section,
.content-block,
.promo-code-block {
  background-color: #192230 !important;
  background-image: linear-gradient(145deg, #1d2737 0%, #151d29 100%) !important;
  border-color: #303c50 !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, .28) !important;
}

.promo-card:nth-child(1) { background-image: linear-gradient(145deg, #24202a 0%, #1a202b 100%) !important; }
.promo-card:nth-child(2) { background-image: linear-gradient(145deg, #1b2736 0%, #151d29 100%) !important; }
.promo-card:nth-child(3) { background-image: linear-gradient(145deg, #1c2933 0%, #151d29 100%) !important; }

.promo-card:hover,
.ent-card:hover,
.game_section:hover {
  border-color: #ff6b2d !important;
  box-shadow: 0 15px 34px rgba(0, 0, 0, .42) !important;
}

.section-block#hero .hero-banner {
  background: #141b26 !important;
  border-color: #ff6b2d !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, .42) !important;
}

.section-block#hero .hero-banner-content {
  color: #ffffff !important;
  background: linear-gradient(90deg, rgba(15,20,29,.98) 0%, rgba(17,23,34,.86) 60%, rgba(17,23,34,0) 100%) !important;
}

.section-block#hero .hero-banner-bonus {
  color: #ffffff !important;
  background: none !important;
  -webkit-background-clip: initial !important;
  -webkit-text-fill-color: #ffffff !important;
  background-clip: initial !important;
}

.cta-banner {
  background-color: #141b26 !important;
  border-color: #ff6b2d !important;
  box-shadow: 0 18px 40px rgba(0, 0, 0, .42) !important;
}

.cta-banner-main {
  background: linear-gradient(90deg, rgba(15,20,29,.98) 0%, rgba(17,23,34,.92) 44%, rgba(17,23,34,.30) 72%, transparent 100%) !important;
}

.cta-banner-bottom {
  background: rgba(24, 33, 47, .97) !important;
  border-top-color: #303c50 !important;
  color: #d6dce6 !important;
}

.hero-title,
.hero-banner-title,
.pc-header,
.ent-name,
.game_section .title,
.content-block h2,
.content-block h3,
.content-block h4,
.cta-title,
.cta-banner-left .cta-title {
  color: #ffffff !important;
}

.content-block h1,
.hero-banner-bonus,
.pc-bonus {
  color: #ffffff !important;
}

.pc-header,
.ent-name,
.content-block h3 {
  color: #ffffff !important;
}

.content-block p,
.content-block li,
.content-block td,
.content-block strong,
.content-block em,
.promo-card,
.promo-card .pc-text,
.ent-card,
.ent-card .ent-desc,
.game_section,
.footer_description,
.footer-disclaimer,
.copyright {
  color: #d6dce6 !important;
}

.content-block table {
  background: #192230 !important;
  border-color: #344156 !important;
}

.content-block th {
  background: #253249 !important;
  color: #ffffff !important;
  border-color: #40506a !important;
}

.content-block td,
.content-block tr {
  background: #182231 !important;
  border-color: #344156 !important;
}

.content-block tr:nth-child(even),
.content-block tr:nth-child(even) td {
  background: #202c3f !important;
}

.content-block .faq-accordion .st-group,
.content-block .st-group {
  background: linear-gradient(145deg, #202c3f 0%, #182231 100%) !important;
  border-color: #344156 !important;
  box-shadow: 0 5px 17px rgba(0, 0, 0, .30) !important;
}

.content-block .faq-accordion .st-group.open { border-color: #12eda4 !important; }
.content-block .faq-accordion .st-header,
.content-block .faq-accordion .st-header .st-name,
.content-block .st-header,
.content-block .st-header .st-name { color: #ffffff !important; }
.content-block .faq-accordion .st-header:hover,
.content-block .faq-accordion .st-header:focus-visible,
.content-block .faq-accordion .st-group.open .st-header,
.content-block .st-header:hover,
.content-block .st-group.open .st-header { background: rgba(18, 237, 164, .10) !important; }
.content-block .faq-accordion .st-body,
.content-block .st-body { background: #151e2b !important; border-top-color: #344156 !important; }
.content-block .faq-accordion .st-arrow,
.content-block .st-arrow { color: #07130f !important; background: #12eda4 !important; }

.btn-success,
.section-block .btn-success,
.cta-banner .btn-success,
.promo-code-block .btn-success,
.header .btn-success,
#mobileMenu .btn-success {
  background: linear-gradient(180deg, #27ffc0 0%, #08bb78 100%) !important;
  border-color: #12eda4 !important;
  color: #07130f !important;
  box-shadow: 0 5px 17px rgba(8, 187, 120, .28) !important;
}

.btn-success:hover,
.section-block .btn-success:hover,
.cta-banner .btn-success:hover,
.promo-code-block .btn-success:hover,
.header .btn-success:hover,
#mobileMenu .btn-success:hover {
  background: linear-gradient(180deg, #5fffd0 0%, #12d98f 100%) !important;
  border-color: #55f7bf !important;
  color: #07130f !important;
}

.header .btn-outline-primary,
#mobileMenu .btn-outline-primary {
  background: #223047 !important;
  border-color: #3b4b64 !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

.header .btn-outline-primary:hover,
#mobileMenu .btn-outline-primary:hover {
  background: #2b3a52 !important;
  border-color: #12eda4 !important;
  color: #ffffff !important;
}

.header .logo,
#mobileMenu .custom-logo-link,
footer.footer .logo_row .custom-logo-link,
.header .logo img,
#mobileMenu .custom-logo-link img,
footer.footer .logo_row .custom-logo {
  background: #12151d !important;
}

/* Keep the supplied logo proportional and make its canvas merge with the header. */
.header .header__container {
  gap: 22px;
}

.header .logo {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 150px !important;
  width: 150px !important;
  max-width: 150px !important;
  height: 76px !important;
  padding: 8px 12px !important;
  overflow: hidden !important;
}

.header .logo img {
  position: static !important;
  display: block !important;
  width: auto !important;
  max-width: 125px !important;
  height: auto !important;
  max-height: 58px !important;
  object-fit: contain !important;
  transform: none !important;
}

#mobileMenu .custom-logo-link,
footer.footer .logo_row .custom-logo-link {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 220px !important;
  max-width: 220px !important;
  height: 92px !important;
  overflow: hidden !important;
}

#mobileMenu .custom-logo-link img,
footer.footer .logo_row .custom-logo {
  position: static !important;
  display: block !important;
  width: 210px !important;
  max-width: 210px !important;
  height: auto !important;
  max-height: 88px !important;
  object-fit: contain !important;
  transform: none !important;
}

/* Complete palette coverage for elements that inherited old template colors. */
.section-block#hero .hero-banner {
  background-color: #151d29 !important;
  background-image: none !important;
  border-color: #ff6b2d !important;
}

.section-block#hero .hero-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(10,15,23,.97) 0%, rgba(10,15,23,.84) 38%, rgba(10,15,23,.24) 54%, rgba(10,15,23,0) 68%);
}

.section-block#hero .hero-banner-img {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center right !important;
  transform: none !important;
}

.section-block#hero .hero-banner-content {
  position: relative !important;
  z-index: 2 !important;
  width: 52% !important;
  max-width: 560px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  align-items: flex-start !important;
  text-align: left !important;
}

.cta-banner {
  background-color: #151d29 !important;
  background-image:
    linear-gradient(90deg, rgba(18,21,29,.98) 0%, rgba(18,21,29,.86) 39%, rgba(18,21,29,.24) 68%),
    url("/assets/images/banner-big1.webp") !important;
  background-size: cover !important;
  background-position: center right !important;
  background-repeat: no-repeat !important;
}

.promo-card .pc-bonus {
  background: linear-gradient(180deg, #27ffc0 0%, #08bb78 100%) !important;
  color: #07130f !important;
  box-shadow: 0 3px 10px rgba(8, 187, 120, .28) !important;
}

.promo-card .pc-dot {
  border-color: #12eda4 !important;
}

.cta-banner-bottom-item,
footer.footer .footer__container .heading {
  color: #12eda4 !important;
}

.cta-banner .btn-outline-primary,
.promo-code-block .btn-outline-primary {
  background: #223047 !important;
  border-color: #3b4b64 !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

.cta-banner .btn-outline-primary:hover,
.promo-code-block .btn-outline-primary:hover {
  background: #2b3a52 !important;
  border-color: #12eda4 !important;
  color: #ffffff !important;
}

#mobileMenu .offcanvas-header,
footer.footer .logo_row,
footer.footer .footer_logos_police,
footer.footer .footer__container2 {
  border-color: #303c50 !important;
}

#mobileMenu .menu-close-btn,
.hero-banner-text,
.cta-banner-left .cta-title,
.footer .heading {
  color: #f7f9fc !important;
}

.review-meta {
  background: #182231 !important;
  border: 1px solid #344156 !important;
  color: #d6dce6 !important;
}

.review-meta p,
.review-meta strong {
  color: #d6dce6 !important;
}

.content-block blockquote,
.content-block code,
.content-block pre {
  background: #151e2b !important;
  border-color: #344156 !important;
  color: #d6dce6 !important;
}

.footer-compliance-badges { border-color: #303c50 !important; }
.age-badge {
  border-color: #12eda4 !important;
  color: #12eda4 !important;
  background: transparent !important;
}

@media (max-width: 991px) {
  .cta-banner-main,
  .section-block#hero .hero-banner-content {
    background: linear-gradient(180deg, rgba(18,22,29,.08) 0%, rgba(18,22,29,.91) 62%, #12161d 100%) !important;
  }

  .section-block#hero .hero-banner {
    background-image: none !important;
  }

  .section-block#hero .hero-banner::after {
    background: linear-gradient(180deg, rgba(18,21,29,.06) 0%, rgba(18,21,29,.18) 38%, rgba(18,21,29,.92) 65%, #12151d 82%);
  }

  .section-block#hero .hero-banner-content {
    width: 100% !important;
    max-width: none !important;
    align-items: center !important;
    text-align: center !important;
  }

  .header .logo {
    flex-basis: 138px !important;
    width: 138px !important;
    max-width: 138px !important;
    height: 66px !important;
  }

  .header .logo img {
    width: auto !important;
    max-width: 112px !important;
    max-height: 54px !important;
  }
}

@media (max-width: 575px) {
  .header .logo {
    flex-basis: 118px !important;
    width: 118px !important;
    max-width: 118px !important;
    height: 54px !important;
  }

  .header .logo img {
    width: auto !important;
    max-width: 96px !important;
    max-height: 48px !important;
  }
}

/* Final specificity guard: the legacy template contains stronger purple table rules. */
.content-block table {
  background: #192230 !important;
  border-color: #344156 !important;
}

.content-block table th {
  background: #253249 !important;
  color: #ffffff !important;
  border-color: #40506a !important;
}

.content-block table td,
.content-block table tr td {
  background: #182231 !important;
  color: #d6dce6 !important;
  border-color: #344156 !important;
}

.content-block table tr:nth-child(even),
.content-block table tr:nth-child(even) td {
  background: #202c3f !important;
}

.content-block table tr:hover td {
  background: #26354b !important;
}

.content-block .faq-accordion .st-group,
.content-block .st-group {
  background: linear-gradient(145deg, #202c3f 0%, #182231 100%) !important;
  border-color: #344156 !important;
}

.content-block .faq-accordion .st-body,
.content-block .st-body {
  background: #151e2b !important;
  border-top-color: #344156 !important;
}

/* All headings use one consistent color; green remains an interactive accent. */
.hero-title,
.hero-banner-title,
.hero-banner-bonus,
.promo-card .pc-header,
.promo-card .pc-bonus,
.ent-card .ent-name,
.game_section header .title,
.game_section .title,
.content-block h1,
.content-block h2,
.content-block h3,
.content-block h4,
.content-block h5,
.content-block h6,
.cta-title,
.cta-banner-left .cta-title,
footer.footer .heading {
  color: #ffffff !important;
}
