/* =Theme customization starts here
-------------------------------------------------------------- */

* {
  -moz-hyphens: none;
  -ms-hyphens: none;
  -webkit-hyphens: none;
  hyphens: none;
  word-break: keep-all;
}

.hidetitle .entry-title {
  display: none;
}

.header-main {
  padding: 0 !important;
}

#primary {
  padding-top: 100px !important;
}

#authorsure-last-updated {
  display: none;
}

body {
  background: #fff !important;
  font-family: 'Montserrat', sans-serif !important;
}

h1 {
  font-weight: bold !important;
  border-bottom: 5px solid #cce4ff;
  padding-top: 5px !important;
}

.site {
  margin: 0 auto;
}

.site::before {
  display: none !important;
}
/* =Theme customization starts here
-------------------------------------------------------------- */

* {
  -moz-hyphens: none;
  -ms-hyphens: none;
  -webkit-hyphens: none;
  hyphens: none;

  /* CHANGED */
  word-break: normal;
}

.hidetitle .entry-title {
  display: none;
}

.header-main {
  padding: 0 !important;
}

#primary {
  padding-top: 100px !important;
}

#authorsure-last-updated {
  display: none;
}

body {
  background: #fff !important;
  font-family: 'Montserrat', sans-serif !important;
}

h1 {
  font-weight: bold !important;
  border-bottom: 5px solid #cce4ff;
  padding-top: 5px !important;
}

.site {
  margin: 0 auto;
}

.site::before {
  display: none !important;
}

#masthead {
  height: 100px;
  margin: 0 auto;
  padding-top: 10px;
}

@media screen and (min-width: 783px) {
  .masthead-fixed {
    position: relative !important;
  }
}

.site-header {
  background-color: #fff !important;
  font-size: 14px;
  max-width: 1024px !important;
  position: relative !important;
}

.site-navigation a {
  color: #000 !important;
}

.primary-navigation li:hover > a {
  color: #fff !important;
  background-color: #26729b !important;
}

.primary-navigation ul ul {
  color: #fff !important;
  background-color: #26729b !important;
  top: 30px !important;
}

.primary-navigation ul ul a {
  padding: 0 0 0 5px !important;
  width: 192px !important;
  color: #fff !important;
}

#secondary {
  display: none;
}

#content {
  margin: 0 !important;
}

.primary-navigation {
  float: none !important;
}

.primary-navigation li {
  height: 30px !important;
  line-height: 30px !important;
}

@media only screen and (max-width: 782px) {
  .primary-navigation li {
    height: auto !important;
    line-height: auto !important;
  }
}

.primary-navigation .menu-item-has-children > a::after {
  top: 14px !important;
}

#top-nav-right {
  float: right;
}

@media only screen and (max-width: 782px) {
  #top-nav-right {
    margin-right: 25px;
  }
  .menu-top-nav-container {
    background-color: #fff;
  }
}

.search-toggle {
  background: transparent !important;
}

.search-toggle::before {
  color: #000 !important;
}

.search-box-wrapper {
  padding-left: 800px !important;
  top: 32px !important;
  right: 36px !important;
}

.search-box {
  background-color: #000 !important;
  padding: 4px !important;
}

.site-content .entry-content {
  padding-top: 0px !important;
}

.site-container,
.content-container,
.site-content,
#primary,
.content-area {
  max-width: 100%;
}

.entry-content {
  max-width: 100%;
}

#home-top-left h1 {
  font-size: 36px;
  border-bottom: 7px solid #cce4ff;
}

#home-top-left p {
  margin-bottom: 10px;
  font-size: 12px;
}

#total-bonuses {
  background-color: #cce4ff;
  text-align: center;
  padding: 5px 0;
  color: #0f5376;
  font-weight: bold;
  font-size: 18px;
  background-repeat: no-repeat;
  background-position-y: center;
  background-position-x: 5%;
}

#home-top-right {
  font-size: 12px;
  background: #F0F0F0;
  text-align: center;
  padding: 0 20px 20px;
}

#home-top-right h2 {
  color: #000;
  background-color: #cce4ff;
  font-size: 18px;
  text-align: center;
  padding: 5px 0;
  margin: 0 -20px 20px -20px;
}

#home-top-right img {
  width: 450px;
  text-align: center;
  margin: 0 auto;
}

#home-top-right button {
  background-color: #009700;
  border-radius: 10px;
  font-size: 11px;
  font-weight: bold;
}


/* ========== CASINO TABLE (PLUGIN) – FULL CSS (5 COLUMNS, STACK EARLY) ========== */
/* Assumes table markup uses:
   1) Online Casinos
   2) Offer Summary
   3) Bonus Codes
   4) Read Review
   5) Visit Casino
*/

/* ===== Wrapper ===== */
.table-responsive{
  width: 100%;
  margin: 2.5rem 0;
  padding: 0;
  box-sizing: border-box;

  border-radius: 14px;

  /* No clipping. No forced scroll on desktop. */
  overflow: visible;
}

/* ===== Base table ===== */
.casino-details-table{
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid #e5e7eb;

  background: #ffffff;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.12);
  font-size: 15px;
}

/* Header row */
.casino-details-table thead th{
  background-color: #cce4ff;
  color: #111827;
  font-size: 13px;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  line-height: 1.2;
  padding: 12px 16px;
  border: 1px;
  white-space: nowrap;
}

/* Body rows */
.casino-details-table tbody tr{
}

.casino-details-table tbody tr:nth-child(even){
  background-color: #f9fafb;
}

.casino-details-table td{
  border: 1px;
  padding: 14px 16px;
  vertical-align: middle;
  font-weight: 400;
  color: #111827;
}

/* Subtle hover (desktop only) */
@media (min-width: 861px){
  .casino-details-table tbody tr:hover{
    background-color: #f1f7ff;
  }
}

/* ===== Desktop: 5 column sizing (ONLY applies >= 1201px) ===== */
@media (min-width: 1201px){
  .casino-details-table{ table-layout: fixed; }

  .casino-details-table thead th:nth-child(4),
  .casino-details-table tbody td:nth-child(4){
    width: 137px;
    white-space: nowrap;
  }

  .casino-details-table thead th:nth-child(5),
  .casino-details-table tbody td:nth-child(5){
    width: 137px;
    white-space: nowrap;
  }

  .casino-details-table thead th:nth-child(1),
  .casino-details-table tbody td:nth-child(1){ width: 30%; }

  .casino-details-table thead th:nth-child(2),
  .casino-details-table tbody td:nth-child(2){ width: 25%; }

  .casino-details-table thead th:nth-child(3),
  .casino-details-table tbody td:nth-child(3){ width: 18%; }

  .casino-details-table th:last-child,
  .casino-details-table td:last-child{ padding-right: 24px; }
}


/* ========== CELL LAYOUT ========== */

/* Offer + Codes blocks */
.ndc-offer-cell,
.ndc-codes-cell{
  line-height: 1.45;
}

.ndc-offer-cell > *,
.ndc-codes-cell > *{
  display: block;
  margin: 0;
  padding: 0;
}

/* Offer Summary */
.ndc-offer-primary{
  font-weight: 900;
  font-size: 15px;
  margin-bottom: 15px;
}

.ndc-offer-secondary{
  font-weight: 700;
  font-size: 13px;
  color: #475569;
  opacity: 0.9;
}

/* Bonus Codes */
.ndc-code-line{
  font-weight: 900;
  font-size: 14px;
  color: #24890d;
  margin-bottom: 15px;
  letter-spacing: 0.02em;
}

.ndc-code-note{
  font-weight: 600;
  font-size: 13px;
  color: #475569;
  opacity: 0.85;
}

/* Casino cell (logo + name + chips) */
.ndc-casino-cell{
  text-align: center;
}

.ndc-casino-link{
  display: inline-block;
  text-decoration: none;
  color: inherit;
}

.ndc-casino-logo{
  display: block;
  margin: 0 auto 6px;
}

.ndc-casino-name{
  font-weight: 800;
  margin: 0 0 4px 0;
}

.ndc-casino-chips{
  display: flex;
  justify-content: center;
  gap: .5rem;
  flex-wrap: wrap;
  margin-top: 6px;
}

.ndc-chip{
  display: inline-flex;
  align-items: center;
  padding: .25rem .55rem;
  border-radius: 999px;
  background: #f1f5f9;
  border: 1px solid #e5e7eb;
  font-size: 12px;
  font-weight: 700;
  color: #334155;
  line-height: 1;
}

/* Link hover */
.casino-details-table tr td:nth-of-type(1) a:hover{
  text-decoration: underline;
}

/* ========== CTA BUTTONS ========== */
.casino-details-table a.playnow,
.casino-details-table a.review{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 7px 12px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  text-decoration: none;
  cursor: pointer;
  box-sizing: border-box;
  white-space: nowrap;
}

/* Visit button – green outline */
.casino-details-table a.playnow{
  background: #ffffff;
  border: 2px solid #24890d;
  color: #24890d;
}

.casino-details-table a.playnow:hover{
  background: #24890d;
  color: #ffffff;
}

/* Review button – blue outline */
.casino-details-table a.review{
  background: #ffffff;
  border: 2px solid #2254ba;
  color: #2254ba;
}

.casino-details-table a.review:hover{
  background: #2254ba;
  color: #ffffff;
}

/* Center the CTA columns */
.ndc-review-cell,
.ndc-visit-cell{
  text-align: center;
  white-space: nowrap;
}


/* Homepage Content */

#homepage-content-section-1 {
  padding: 10px;
  font-size: 13px;
  color: #0f0f58;
  margin-bottom: 40px;
}

#homepage-content-section-1 .section {
  background-color: #e7e9ea;
  padding: 20px;
  margin: 0 0 20px 0;
}

#homepage-content-section-1 h3 {
  font-weight: bold;
  font-size: 18px;
}

#homepage-content-section-1 ul {
  list-style-image: url('images/double-arrow-circle.png');
}

#homepage-content-section-1 li {
  padding-bottom: 12px;
}

#homepage-content-section-1 h2 {
  font-weight: bold;
  font-size: 18px;
}

#how-to-claim {
  background-color: #003d52;
  padding: 20px;
  color: #fff;
}

#how-to-claim h3 {
  text-align: center;
  text-transform: uppercase;
  font-size: 30px;
  color: #fff;
  font-weight: bold;
}

#how-to-claim img {
  float: left;
  padding: 30px 50px 40px 20px;
}

#software {
  background-color: #e2fff0;
  line-height: 20px;
  margin-bottom: 20px;
}

#software .headline {
  background-color: #15c403;
  color: #fff;
  padding: 5px;
  font-weight: 600;
}

#software .links,
#top-pages .links,
#casino-games .links {
  padding: 20px 10px;
}

#software .links a,
#top-pages .links a,
#casino-games .links a {
  text-decoration: none;
  color: #050f89;
  font-size: 12px;
}

#software .links a:hover,
#top-pages .links a:hover,
#casino-games .links a:hover {
  border-bottom: 2px solid #000;
}

#top-pages {
  background-color: #eceefe;
  line-height: 20px;
  margin-bottom: 20px;
}

#top-pages .headline {
  background-color: #0925f2;
  color: #fff;
  padding: 5px;
  font-weight: 600;
}

#casino-games {
  background-color: #f5e3c9;
  line-height: 20px;
}

#casino-games .headline {
  background-color: #ff9908;
  color: #fff;
  padding: 5px;
  font-weight: 600;
}

.site-info {
  padding-bottom: 40px !important;
}

.site-footer {
  background-color: #fafafa !important;
  margin: 0 auto;
  padding: 50px !important;
}

.site-footer .footer-headline {
  font-weight: bold;
  padding-bottom: 5px;
  border-bottom: 5px solid #fff;
  font-size: 14px;
}

.site-footer ul {
  list-style-type: none;
  margin: 0 !important;
}

#copyright-footer {
  background-color: #c1c2f6;
  text-align: center;
  margin: 0 -50px;
  padding: 25px 0;
  color: #000;
}

#copyright-footer a {
  color: #0030ff;
}

/* REVIEW */

.review-casino {
  background-color: #f3f3f3;
  text-align: center;
  padding: 10px;
}

.review-casino img {
  padding-bottom: 5px;
}

.review-casino button {
  width: 100%;
  color: #24890d;
  border: 2px solid #24890d;
  border-radius: 5px;
  text-decoration: none;
  padding: 5px;
  text-transform: uppercase;
  text-align: center;
  background: none;
}

.review-bonus {
  border: 5px solid #ffc007;
  text-align: center;
  margin-bottom: 20px;
  color: #4caf50;
  font-weight: 500;
  font-size: 18px;
}

.review-bonus-header {
  background-color: #ffc007;
  color: #fff;
  margin-bottom: 5px;
  font-weight: bold;
}

.review-bonus img {
  vertical-align: middle;
}

.review-bonus .black {
  color: #000;
}

.review-info {
  border: 5px solid #15c403;
  text-align: center;
  color: #15c403;
  font-weight: 500;
  padding-bottom: 25px;
  font-size: 18px;
  line-height: 36px;
}

.review-info-header {
  background-color: #15c403;
  color: #fff;
  font-weight: bold;
  margin-bottom: 25px;
}

.review-info .black {
  color: #000;
}

.review-devices {
  border: 5px solid #0925f2;
  text-align: center;
  padding-bottom: 20px;
  line-height: 30px;
}

.review-devices-header {
  background-color: #0925f2;
  font-weight: bold;
  color: #fff;
  margin-bottom: 20px;
}

.review-devices-left {
  width: 50%;
  float: left;
}

.review-playnow {
  text-align: center;
  margin: 0 auto;
  font-size: 48px;
  background-color: #469f16;
  border-radius: 25px;
}

@media screen and (min-width: 810px) {
  .alignleft {
    margin-left: 0px !important;
  }
  .alignright {
    margin-right: 0px !important;
  }
}

.recent-post {
  padding: 5px;
  background: #e5e5e5;
  margin-bottom: 20px;
}

.recent-post a {
  text-decoration: none !important;
}

.recent-post .caption {
  color: #1b1b1b;
  font-size: 13px;
  font-weight: 500;
}

.recent-author {
  font-size: 12px;
  float: left;
  color: #a5a5a5;
}

.recent-date {
  font-size: 12px;
  float: right;
  color: #a5a5a5;
}

.clearfix {
  clear: both;
}

/* Fix header on small screens */
@media (max-width: 782px) {
  #masthead {
    height: auto !important;
    padding-top: 10px !important;
  }
  .masthead-fixed {
    position: static !important;
  }
  .site-header {
    max-width: 100% !important;
    position: static !important;
  }
  .search-box-wrapper {
    position: static !important;
    padding: 0 !important;
    top: auto !important;
    right: auto !important;
  }
  .primary-navigation li {
    height: auto !important;
    line-height: 1.4 !important;
  }
  #top-nav-right {
    float: none !important;
    margin: 0 !important;
  }
}

.page-titlebar-h {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  color: #0f0f58;
  border-bottom: 2px solid #cce4ff;
  padding-bottom: 5px;
  margin-bottom: 20px;
}

/* Restore sticky header visibility */
.masthead-fixed,
.site-header {
  top: 0;
  width: 100%;
  z-index: 9999;
}

/* ================================
   GREY-ROUNDED BOX STYLES
   ================================ */

.grey-rounded {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 1.25rem 1.5rem;
  margin: 1.5rem 0 2rem;
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  line-height: 1.6;
}

.grey-rounded h2 {
  font-size: 1.1rem;
  font-weight: 700;
  color: #222;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

.grey-rounded p {
  font-size: 0.8125rem;
  margin: 0.25rem 0 1rem;
  color: #444;
}

.grey-rounded details {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  margin-bottom: 0.75rem;
  padding: 0.75rem 1rem;
  transition: all 0.25s ease;
}

.grey-rounded details:hover {
  border-color: #ccc;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.grey-rounded summary {
  font-weight: 600;
  cursor: pointer;
  color: #222;
  list-style: none;
  position: relative;
}

.grey-rounded summary::-webkit-details-marker {
  display: none;
}

.grey-rounded summary::after {
  content: "▾";
  position: absolute;
  right: 0;
  top: 0;
  font-size: 0.9rem;
  color: #999;
  transition: transform 0.3s ease;
}

.grey-rounded details[open] summary::after {
  transform: rotate(180deg);
  color: #666;
}

.grey-rounded ul {
  margin: 0.5rem 0 0.75rem 1.2rem;
  padding: 0;
  font-size: 0.9rem;
  list-style-type: disc;
}

.grey-rounded li {
  margin-bottom: 0.3rem;
}

.grey-rounded a {
  color: #0066cc;
  text-decoration: none;
}

.grey-rounded a:hover {
  text-decoration: underline;
  color: #004c99;
}

.grey-rounded div {
  font-size: 0.9rem;
  margin-top: 0.75rem;
  border-top: 1px dashed #ddd;
  padding-top: 0.75rem;
  color: #333;
}

/* Mobile optimization */
@media (max-width: 600px) {
  .grey-rounded {
    padding: 1rem;
  }
  .grey-rounded h2 {
    font-size: 1rem;
  }
  .grey-rounded details {
    padding: 0.65rem 0.9rem;
  }
}

/* Footer Modernization */
.footer-col {
  margin-bottom: 25px;
  font-size: 0.95rem;
}

.footer-head {
  font-weight: 700;
  color: #003366;
  margin-bottom: 10px;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.4px;
}

.footer-subhead {
  margin-top: 14px;
  font-weight: 700;
  color: #003366;
  font-size: 0.9rem;
}

.footer-col a {
  color: #005999;
  text-decoration: none;
  line-height: 1.6;
  display: inline-block;
}

.footer-col a:hover {
  color: #003366;
  text-decoration: underline;
}

/* Optional subtle highlight around columns */
.footer-col {
  padding: 4px 0;
}

.rg-tools {
  width: 100%;
  border-collapse: collapse;
  margin: 16px 0;
}

.rg-tools th,
.rg-tools td {
  padding: 10px 12px;
  border: 1px solid #e6eef8;
}

.rg-tools thead th {
  background: #f4f8fc;
  font-weight: 600;
}

.trust-badge {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: center;
  background: #f4f8fc;
  border: 1px solid #cce4ff;
  border-radius: 10px;
  padding: 10px 14px;
  max-width: 520px;
  margin: 20px auto;
}



/* SHOW MORE / LESS – CASINO TABLE CONTROL */

/* Hidden rows */
.casino-details-table .casino-hidden {
  display: none;
}

/* Show more / less button */
.casino-show-more {
  margin: 12px auto 50px;
  padding: 8px 18px;
  border-radius: 999px;
  border: 1px solid #005999;
  background: #cce4ff;
  font-size: 13px;
  font-weight: 600;
  color: #003366;
  cursor: pointer;
  display: inline-block;
  text-align: center;
}

.casino-show-more:hover {
  background: #b7d7ff;
}

.casino-show-more[aria-busy="true"] {
  opacity: 0.7;
  cursor: default;
}

/* NEWS GRID: consistent cards */
.archive.category-news .wp-block-query,
.blog .wp-block-query,
.post-type-archive .wp-block-query {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 22px;
  align-items: start;
}

/* Make each post a uniform "card" */
.wp-block-post {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* Featured image: cap size + crop nicely */
.wp-block-post-featured-image {
  margin: 0;
  overflow: hidden;
  border-radius: 10px;
  background: #f4f4f6;
}

.wp-block-post-featured-image img {
  width: 100%;
  height: 180px;
  object-fit: cover;
  display: block;
}

/* Tablet & mobile: smaller caps */
@media (max-width: 1024px) {
  .wp-block-post-featured-image img {
    height: 150px;
  }
}
@media (max-width: 680px) {
  .wp-block-post-featured-image img {
    height: 120px;
  }
}

/* If no image, don't leave a tall empty box */
.wp-block-post-featured-image:empty {
  display: none;
}

/* Title/excerpt clamp so rows line up */
.wp-block-post-title {
  margin: 6px 0 2px;
  line-height: 1.25;
}

.wp-block-post-title a {
  text-decoration: none;
}

.wp-block-post-excerpt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  min-height: 3.9em;
}

/* Optional: subtle card styling for polish */
.wp-block-post {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 12px;
  padding: 12px;
  box-shadow: 0 1px 2px rgba(0,0,0,.04);
}

.fast-payout-table { width: 100%; border-collapse: collapse; margin: 1.5rem 0; font-size: 0.8125rem; } .fast-payout-table thead { background: #f7f7f7; } .fast-payout-table th, .fast-payout-table td { padding: 0.75rem 0.9rem; border: 1px solid #e3e3e3; text-align: left; vertical-align: middle; } .fast-payout-table th { font-weight: 600; } .fast-payout-table tbody tr:nth-child(even) { background: #fafafa; } /* Tier A highlight */ .fast-payout-table.tier-a { border: 0px solid #d4b76a; font-size: 0.8125rem; } .fast-payout-table.tier-a thead { background: #fffaf0; } /* Tier B subtle style */ .fast-payout-table.tier-b { border: 1px solid #ddd; font-size: 0.8125rem; } /* Make tables scrollable on mobile */ @media screen and (max-width: 860px) { .fast-payout-table { display: block; width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; } }

/* Sticky bar styling */
.onpage-subnav {
  position: sticky;
  top: 70px;
  z-index: 50;
  padding: 10px 0;
  margin-bottom: 20px;
  background: #ffffff;
}

/* Make the nav items sit in a row and center them */
.onpage-subnav .wp-block-navigation__container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0;
  margin: 0;
  list-style: none;
}

/* Every nav item gets side padding (controls spacing) */
.onpage-subnav .wp-block-navigation__container .wp-block-navigation-item {
  padding: 0 0.75rem;
}

/* Add | separators between items */
.onpage-subnav .wp-block-navigation__container .wp-block-navigation-item + .wp-block-navigation-item {
  border-left: 1px solid rgba(0, 0, 0, 0.3);
}

/* Link styling */
.onpage-subnav a {
  text-decoration: none;
  font-size: 1.25rem;
  font-weight: 600;
}

.onpage-subnav a:hover {
  text-decoration: underline;
}

/* Keep anchored headings from hiding under the sticky header */
h2[id],
h3[id] {
  scroll-margin-top: 90px;
}

/* Force Gutenberg mobile menu overlay to be full width and padded */
@media (max-width: 900px) {

  body.has-modal-open .wp-block-navigation__responsive-dialog {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
  }

  body.has-modal-open .wp-block-navigation__responsive-container-content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 1.5rem 1.5rem 2rem !important;
    box-sizing: border-box !important;
  }

  body.has-modal-open .wp-block-navigation-item__content {
    display: block;
    padding: 0.75rem 0 !important;
  }
}



/* ===== Brand variables – tuned for NoDepositCasinos247 ===== */
:root {
  --nc-primary: #d5c18e;
  --nc-primary-dark: #16a34a;
  --nc-primary-soft: #5a4213;
  --nc-bg-card: #ffffff;
  --nc-bg-page: #f5f7fb;
  --nc-accent-gold: #d5c18e;
  --nc-accent-gold-text: #5a4213;
  --nc-accent-green: #16a34a;
  --nc-accent-green-soft: #dcfce7;
  --nc-text-main: #111827;
  --nc-text-muted: #6b7280;
}




/* Keep internals simple – black box */
.ndc-news-grid img {
  max-width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  margin-bottom: 0.5rem;
}

.ndc-news-grid a {
  font-weight: 500;
}

/* Match body size in authors & news cards */
.ndc-authors-card p,
.ndc-news-grid p {
  font-size: 1.2rem;
  line-height: 1.6;
}

/* Trusted since 2011 – simple divider style */
.ndc-trust-strip {
  display: block;
  text-align: center;
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #6b7280;
  padding: 0.5rem 0;
  margin: 2rem 0 1.5rem;
}

.ndc-trust-strip::before {
  content: none;
}

/* Bottom internal links band */
.ndc-links-band {
  margin-top: 3rem;
  margin-bottom: 1.5rem;
  padding: 2rem 1.75rem 2.5rem;
  background: #f9fafb;
  border-radius: 18px;
  border: 1px solid #e5e7eb;
}

.ndc-links-band h2,
.ndc-links-band h3 {
  margin-top: 0;
  margin-bottom: 0.9rem;
}

.ndc-links-band ul {
  margin-top: 0;
  margin-bottom: 1.25rem;
}

.ndc-links-band li {
  margin-bottom: 0.25rem;
}

.ndc-links-band a {
  font-size: 0.9rem;
}

/* Meta "Last Updated On" line */
.ndc-updated-line {
  font-size: 0.9rem;
  color: #000000;
  text-align: right;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}


/* Disclaimer strip under main table */
.ndc-disclaimer {
  font-size: 1.1rem;
  color: #6b7280;
  line-height: 1.5;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  padding: 1.25rem;
  border-bottom: 1px solid #e5e7eb;
}

.ndc-disclaimer a {
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* Homepage heading cleanup */
.home .entry-content h2 {
  font-size: 1.5rem;
  line-height: 1.3;
  margin-top: 2.25rem;
  margin-bottom: 0.9rem;
  font-weight: 700;
  color: #0f172a;
}

.home .entry-content h3 {
  font-size: 1.35rem;
  line-height: 1.35;
  margin-top: 1.8rem;
  margin-bottom: 0.6rem;
  font-weight: 600;
  color: #111827;
}

/* Featured Casino Bonus heading */
.home .entry-content .ndc-feature-heading {
  font-size: 1.2rem;
  line-height: 1.3;
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: #111827;
}

.home .entry-content .ndc-feature-heading::before {
  content: none;
}


/* Info content cards */

.ndc-info-block {
  background: #ffffff;
  border-radius: 8px;
  border: 1px solid #e5e7eb;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.04);
  padding: 1.5rem 1.75rem;
  margin: 2.5rem 0;
  box-sizing: border-box;
}

.ndc-info-block h2,
.ndc-info-block h3 {
  margin-top: 0;
  margin-bottom: 0.75rem;
}

.ndc-info-block p {
  font-size: 1.0rem;
  line-height: 1.6;
  margin-bottom: 0.75rem;
}

/* Bullet lists inside info cards */
.ndc-info-block ul {
  margin: 0.25rem 0 0.75rem 1.4rem;
  padding-left: 0;
}

.ndc-info-block li {
  margin-bottom: 0.35rem;
  font-size: 14px;
  line-height: 1.6;
}

.ndc-info-block li::marker {
  color: #2563eb;
}

/* Latest Casino News – treat whole group as a card */
.ndc-news-grid {
  margin-top: 2rem;
  margin-bottom: 2.5rem;
  background: #ffffff;
  border-radius: 18px;
  border: 1px solid #e5e7eb;
  box-shadow: 0 10px 25px rgba(15, 23, 42, 0.05);
  padding: 1.5rem 1.75rem;
}

/* Keep internals simple – black box (reassert) */
.ndc-news-grid img {
  max-width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  margin-bottom: 0.5rem;
}

.ndc-news-grid a {
  font-weight: 600;
}

.ndc-news-grid p {
  font-size: 1.4rem;
  line-height: 1.6;
}

/* ===== TOP 3 CASINO CTA GRID ===== */

:root {
  --ndc-primary: #cce4ff;
  --ndc-primary-dark: #f4f8fc;
  --ndc-accent: #00b67a;
  --ndc-card-bg: #ffffff;
  --ndc-card-soft: #f4f6ff;
  --ndc-text-main: #111827;
  --ndc-text-muted: #6b7280;
  --ndc-radius-lg: 12px;
}

/* Grid wrapper */
.casino-cta-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin: 20px 0 30px;
}

@media (max-width: 960px) {
  .casino-cta-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .casino-cta-grid {
    grid-template-columns: 1fr;
  }
}

/* Card base */
.casino-cta-card {
  background: var(--ndc-card-bg);
  border-radius: var(--ndc-radius-lg);
  box-shadow: 0 10px 25px rgba(15, 23, 42, 0.08);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  font-size: 0.95rem;
}

/* Rank badge */
.casino-cta-card__rank {
  position: absolute;
  top: 10px;
  left: 10px;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: #ffffff;
  color: #0a0a0a;
  font-weight: 900;
  font-size: 1.3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 10px rgba(15, 23, 42, 0.15);
  z-index: 2;
}

/* Header area */
.casino-cta-card__header {
  position: relative;
  background: var(--ndc-primary);
  color: #000000;
  padding: 18px 16px 14px;
  text-align: center;
}

.casino-cta-card__logo {
  max-width: 130px;
  max-height: 46px;
  margin: 6px auto 8px;
  display: block;
}

.casino-cta-card__topline {
  font-size: 1.2rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 900;
  opacity: 0.9;
}

.casino-cta-card__geo {
  margin-top: 8px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 999px;
  background: #ffffff;
  font-size: 0.9rem;
}

.casino-cta-card__geo-flag {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  overflow: hidden;
  background-size: cover;
  background-position: center;
}

/* Example AU flag – replace URL with your asset */
.casino-cta-card__geo-flag--au {
  background-image: url('https://flagcdn.com/w20/au.png');
}

/* Body */
.casino-cta-card__body {
  padding: 16px 16px 14px;
  flex: 1 1 auto;
}

.casino-cta-card__offer {
  color: var(--ndc-text-main);
  font-weight: 700;
  line-height: 1.35;
  margin-bottom: 10px;
}

.casino-cta-card__label {
  font-size: 0.8rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--ndc-text-muted);
  margin-bottom: 10px;
}

/* Button */
.casino-cta-card__btn {
  display: block;
  width: 100%;
  text-align: center;
  background: var(--ndc-primary);
  color: #ffffff;
  border-radius: 999px;
  padding: 9px 14px;
  font-weight: 700;
  text-decoration: none;
  margin-bottom: 4px;
}

.casino-cta-card__btn:hover {
  background: var(--ndc-primary-dark);
}

/* Claimed strip */
.casino-cta-card__claimed {
  background: var(--ndc-card-soft);
  padding: 8px 12px;
  font-size: 0.9rem;
  color: var(--ndc-text-muted);
  text-align: center;
}

.casino-cta-card__claimed strong {
  color: var(--ndc-text-main);
}

/* Footer: thumb + more details */
.casino-cta-card__footer {
  padding: 10px 12px 12px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.casino-cta-card__thumb {
  border-radius: 10px;
  overflow: hidden;
}

.casino-cta-card__thumb img {
  display: block;
  width: 100%;
  height: auto;
}

.casino-cta-card__more {
  font-size: 1.2rem;
  font-weight: 600;
  color: var(--ndc-primary);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.casino-cta-card__more::before {
  content: "+";
  font-weight: 700;
}

/* Optional highlight for #1 card */
.casino-cta-card--top {
  border: 2px solid var(--ndc-primary);
}

/* --------------------------------------------------
   1) Override Guten's 60% width for our special block
   -------------------------------------------------- */

.page-template-default .entry-content > .ndc-fullwidth-block,
.post-template-default .entry-content > .ndc-fullwidth-block {
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
}

/* --------------------------------------------------
   2) Info block styling (above the table)
   -------------------------------------------------- */

.ndc-info-block {
  background: #ffffff;
  border: 1px solid #dde4fb;
  border-radius: 12px;
  padding: 18px 20px;
  margin: 0 0 18px;
  font-size: 1.1rem;
  line-height: 1.6;
}

.ndc-info-block h2,
.ndc-info-block h3 {
  margin-top: 0;
  margin-bottom: 8px;
  font-size: 1.4rem;
}

.ndc-info-block p {
  margin: 0 0 10px;
}

/* Optional subtle highlight for key lines */
.ndc-info-block .ndc-highlight {
  font-weight: 600;
}

/* Inside our full-width block, keep things aligned to the rail */
.ndc-fullwidth-block-inner,
.ndc-fullwidth-block .ndc-info-block,
.ndc-fullwidth-block .ndc-table-wrapper {
  max-width: 1024px;
  margin: 0 auto;
}

.ndc-table-wrapper {
  margin: 0 0 24px;
}

/* BONUS PROMO BOX */
.ndc-bonus-box {
  background: #f0f7ff;
  border: 1px solid #c5ddff;
  border-radius: 12px;
  padding: 1.5rem 1.75rem;
  margin: 1.5rem 0;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
}

.ndc-bonus-box h2 {
  font-size: 1.5rem;
  margin: 0 0 0.75rem;
  color: #000000;
}

.ndc-bonus-box p {
  font-size: 1.3rem;
  margin: 0 0 0.5rem;
  color: #222;
}

.ndc-bonus-box p strong {
  font-weight: 600;
}

/* CTA BUTTON INSIDE BONUS BOX */
.ndc-bonus-box .ndc-cta-button {
  display: inline-block;
  margin-top: 0.75rem;
  padding: 0.75rem 1.75rem;
  font-size: 1.1rem;
  font-weight: 600;
  text-decoration: none;
  text-align: center;
  border-radius: 999px;
  background: #ffffff;
  color: #2f7dde;
  border: 1px solid #2f7dde;
  transition: background 0.18s ease,
              border-color 0.18s ease,
              box-shadow 0.18s ease,
              transform 0.08s ease;
}

.ndc-bonus-box .ndc-cta-button:hover,
.ndc-bonus-box .ndc-cta-button:focus {
  background: #ffffff;
  border-color: #235fa7;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
  transform: translateY(-1px);
}

.ndc-bonus-box .ndc-cta-button:active {
  box-shadow: none;
  transform: translateY(0);
}

/* MOBILE TWEAKS */
@media (max-width: 600px) {
  .ndc-bonus-box {
    padding: 1.25rem 1.25rem;
  }

  .ndc-bonus-box h2 {
    font-size: 1.3rem;
  }

  .ndc-bonus-box p {
    font-size: 1.1rem;
  }

  .ndc-bonus-box .ndc-cta-button {
    width: 100%;
  }
}

.policy-inline {
  background-color: #fff7e6;
  border: 1px solid #ffd8a8;
  padding: 0.75rem;
  border-radius: 16px;
  margin: 1rem 0;
  align-content: middle;
}

.ndc-featured-bonus {
  padding: 2rem;
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  border-radius: 1rem;
  padding: 1.75rem;
  margin: 2rem 0;
  text-align: center;
}

.ndc-featured-bonus h3 {
  margin: .75rem 0;
}

.ndc-featured-bonus .wp-block-buttons {
  justify-content: center;
  gap: 5rem;
}

/* Bonus cell: compact, readable */
.casino-details-table td.ndc-bonus {
  line-height: 1.25;
  font-weight: 800;
  white-space: normal;
}

/* Secondary line: smaller, softer, prevents the tower effect */
.casino-details-table td.ndc-bonus .ndc-bonus-secondary {
  display: block;
  margin-top: .25rem;
  font-weight: 600;
  font-size: .95em;
  color: #475569;
}

/* ===== HERO WRAPPER (big combined card around both columns) ===== */

.ndc-hero-row {
  background: #f3f6ff;
  border-radius: 8px;
  padding: 1.75rem 1.75rem 1.5rem;
  border: 1px solid #d5e2ff;
  box-shadow: 0 14px 35px rgba(15, 23, 42, 0.06);
  margin: 0 0 2.5rem;
  font-size: .95em;
}

.ndc-hero-row .wp-block-column {
  padding: 0 0.75rem;
}

@media (max-width: 781px) {
  .ndc-hero-row {
    padding: 1.25rem 1.25rem 1.1rem;
  }

  .ndc-hero-row .wp-block-column {
    padding: 0;
    margin-bottom: 1rem;
  }
}

/* Left intro column inside hero – flat, no extra card */
.ndc-hero-block {
  background: transparent;
  border: none;
  box-shadow: none;
  padding: 0;
  font-size: 1.1em;
}

/* Right featured casino column – also flat */
.ndc-feature-card {
  background: transparent;
  border: none;
  box-shadow: none;
  padding: 0;
}

/* Make header bar span full width */
.site,
#masthead,
.site-header {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Full-width hero band */
.home .ndc-hero-band {
  background: #ffffff;
  margin: 0 0 2.5rem;
}

/* Inner card stays aligned to content rail */
.home .ndc-hero-band .ndc-hero-row {
  max-width: 1024px;
  margin: 0 auto;
  background: #f3f6ff;
  border-radius: 8px;
  padding: 1.75rem 1.75rem 1.5rem;
  border: 0px solid #d5e2ff;
  box-shadow: 0 14px 35px rgba(15, 23, 42, 0.06);
}

body {
  font-size: 1.1rem;
  line-height: 1.6;
}

.site-content .entry-content p {
  font-size: 1.1rem;
}

.site-content .entry-content,
.site-content .entry-content p {
  font-size: 1.1rem !important;
  line-height: 1.6;
}

/* Force body text size inside info block */
.ndc-info-block p,
.ndc-info-block li,
.ndc-info-block .has-small-font-size,
.ndc-info-block .has-medium-font-size,
.ndc-info-block .has-large-font-size {
  font-size: 1.1rem !important;
  line-height: 1.6;
}

.wp-block-post-date__modified-date time::before {
  content: "Last Updated On: ";
  font-weight: 600;
}

/* ====== TYPE SCALE (SAFE, SITEWIDE) ====== */
:root {
  --ndc-text: 0.8125rem;
  --ndc-text-sm: 0.75rem;
  --ndc-text-lg: 0.875rem;
  --ndc-nav: 0.875rem;
  --ndc-btn: 0.875rem;
  --ndc-lh: 1.65;
  --ndc-lh-tight: 1.2;
}

html {
  font-size: 100%;
}

body {
  font-size: var(--ndc-text);
  line-height: var(--ndc-lh);
}

/* Body copy in the content rail (paragraphs + lists) */
.site-content .entry-content p,
.site-content .entry-content li {
  font-size: var(--ndc-text);
  line-height: var(--ndc-lh);
}

/* Optional helpers: small text */
small,
.has-small-font-size {
  font-size: var(--ndc-text-sm);
  line-height: 1.5;
}

/* Nav + header links */
header a,
.main-navigation a,
nav a {
  font-size: var(--ndc-nav);
  line-height: 1.2;
}

/* Buttons + WP button block */
.wp-block-button__link,
button, .button, input[type="submit"] {
  font-size: var(--ndc-btn);
  line-height: 1.2;
}

/* Mobile: keep body readable without changing headings */
@media (max-width: 768px) {
  :root {
    --ndc-text: 0.8125rem;
    --ndc-text-sm: 0.75rem;
    --ndc-text-lg: 0.875rem;
  }
}

/* Force 13px body copy everywhere (leave headings alone) */
.site-content .entry-content p,
.site-content .entry-content li,
.ndc-info-block p,
.ndc-info-block li,
.ndc-news-grid p,
.ndc-bonus-box p {
  font-size: var(--ndc-text) !important;
  line-height: var(--ndc-lh) !important;
}

/* =========================================================
   FAST PAYOUT TABLE
   Desktop = normal table
   Tablet/Phone (<=1024px) = stacked cards
   ========================================================= */

/* Base (desktop defaults) */
figure.wp-block-table.fast-payout-table > table.fast-payout-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.8125rem;
  line-height: 1.55;
  table-layout: fixed;
}

/* Cells */
figure.wp-block-table.fast-payout-table th,
figure.wp-block-table.fast-payout-table td {
  padding: 12px 14px;
  border: 1px solid #e3e3e3;
  text-align: left;
  vertical-align: middle;
}

/* Tier A optional highlight */
figure.wp-block-table.fast-payout-table.tier-a > table.fast-payout-table {
  border: 1px solid #d4b76a;
  border-radius: 8px;
}

figure.wp-block-table.fast-payout-table.tier-a thead {
  background: #fffaf0;
}

/* Tier B optional highlight */
figure.wp-block-table.fast-payout-table.tier-b > table.fast-payout-table {
  border: 1px solid #d4b76a;
  border-radius: 8px;
}

/* --- STACKED MODE: tablet + phone --- */
@media (max-width: 1024px) {
  figure.wp-block-table.fast-payout-table thead {
    display: none !important;
  }

  figure.wp-block-table.fast-payout-table > table.fast-payout-table,
  figure.wp-block-table.fast-payout-table > table.fast-payout-table > tbody,
  figure.wp-block-table.fast-payout-table > table.fast-payout-table > tbody > tr,
  figure.wp-block-table.fast-payout-table > table.fast-payout-table > tbody > tr > td {
    display: block !important;
    width: 100% !important;
  }

  figure.wp-block-table.fast-payout-table > table.fast-payout-table > tbody > tr {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    margin: 0 0 14px;
    overflow: hidden;
  }

  figure.wp-block-table.fast-payout-table > table.fast-payout-table > tbody > tr > td {
    display: grid !important;
    grid-template-columns: 160px 1fr;
    gap: 12px;
    padding: 10px 12px;
    border: 0;
    border-bottom: 1px solid #f0f2f7;
    font-size: 13px !important;
    line-height: 1.35 !important;
    white-space: normal !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
  }

  figure.wp-block-table.fast-payout-table > table.fast-payout-table > tbody > tr > td:last-child {
    border-bottom: none;
  }

  figure.wp-block-table.fast-payout-table > table.fast-payout-table > tbody > tr > td::before {
    content: attr(data-label);
    font-weight: 700;
    color: #475569;
  }
}

/* Phone: tighter label column */
@media (max-width: 600px) {
  figure.wp-block-table.fast-payout-table > table.fast-payout-table > tbody > tr > td {
    grid-template-columns: 130px 1fr;
  }
}

/* ===== BONUS TYPES TABLE — ALWAYS STACKED (ALL SCREEN SIZES) ===== */
figure.wp-block-table.ndc-bonus-types {
  width: 100%;
  max-width: 100%;
  margin: 1.25rem 0;
}

figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table thead {
  display: none !important;
}

figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table,
figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table tbody,
figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table tr,
figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table td {
  display: block !important;
  width: 100% !important;
}

figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table tbody tr {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  margin: 0 0 14px;
  overflow: hidden;
}

figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table td {
  display: grid !important;
  grid-template-columns: 200px 1fr;
  gap: 12px;
  padding: 12px 14px;
  border-bottom: 1px solid #f0f2f7;
  line-height: 1.35;
  white-space: normal;
  word-break: break-word;
  overflow-wrap: anywhere;
}

figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table td:last-child {
  border-bottom: none;
}

figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table td::before {
  content: attr(data-label);
  font-weight: 700;
  color: #475569;
}

figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table td[data-label="Casino"] {
  font-weight: 800;
}

figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table a {
  font-size: inherit;
}

@media (max-width: 600px) {
  figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table td {
    grid-template-columns: 140px 1fr;
    padding: 10px 12px;
  }
}

/* ===== BONUS TYPES (STACKED) — FONT FIX (scoped) ===== */
figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table,
figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table td,
figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table td::before,
figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table a {
  font-size: 13px !important;
  line-height: 1.55 !important;
}

figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table td::before {
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table td[data-label="Casino"] {
  font-weight: 800 !important;
}

figure.wp-block-table.ndc-bonus-types table.bonus-comparison-table a {
  font-weight: 600;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

@media (max-width: 1200px) {
  .ndc-table-wrapper > table.casino-details-table thead {
    display: none !important;
  }

  .ndc-table-wrapper > table.casino-details-table,
  .ndc-table-wrapper > table.casino-details-table tbody,
  .ndc-table-wrapper > table.casino-details-table tr,
  .ndc-table-wrapper > table.casino-details-table td {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .ndc-table-wrapper > table.casino-details-table tr {
    background: #fff !important;
    margin: 0 0 16px !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 6px 18px rgba(15,23,42,.10) !important;
  }

  .ndc-table-wrapper > table.casino-details-table td {
    padding: 12px 14px !important;
    border: 0 !important;
    border-bottom: 1px solid #e5e7eb !important;
    text-align: center !important;
    white-space: normal !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
  }

  .ndc-table-wrapper > table.casino-details-table td:last-child {
    border-bottom: 0 !important;
  }

  .ndc-table-wrapper > table.casino-details-table td::before {
    content: attr(data-th) !important;
    display: block !important;
    margin-bottom: 6px !important;
    font-weight: 700 !important;
    font-size: 12px !important;
    color: #6b7280 !important;
  }

  .ndc-table-wrapper > table.casino-details-table a.playnow,
  .ndc-table-wrapper > table.casino-details-table a.review {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    margin-top: 8px !important;
  }
}

/* ===== Single casino card ===== */

.nc-single-card {
  display: flex;
  border-radius: 8px;
  overflow: hidden;
  background: var(--nc-bg-card);
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.12);
  margin: 24px 0;
  position: relative;
  max-width: 100%;
}

/* Left panel (logo, flag) */

.nc-card-left {
  position: relative;
  width: 260px;
  min-height: 240px;
  background: radial-gradient(circle at top left, #ffffff, #021219);
  background-color: var(--nc-primary-dark);
  color: #ffffff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 32px 24px;
}

.nc-logo-wrap img {
  max-width: 180px;
  height: auto;
  display: block;
}

/* Flag / "Accepts US players" pill */

.nc-flag-pill {
  margin-top: 28px;
  background: rgba(0, 0, 0, 0.6);
  border-radius: 999px;
  padding: 6px 14px;
  font-size: 13px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.35);
}

.nc-flag-icon {
  font-size: 16px;
}

/* Right panel (content) */

.nc-card-right {
  flex: 1;
  padding: 24px 32px 24px 32px;
  background: var(--nc-bg-page);
}

.nc-card-title {
  font-size: 22px;
  line-height: 1.3;
  margin: 0 0 8px 0;
  color: var(--nc-primary);
}

.nc-card-subtitle {
  font-weight: 700;
  font-size: 16px;
  margin-bottom: 12px;
  color: var(--nc-text-main);
}

/* Bullet list with check icons */

.nc-card-list {
  list-style: none;
  padding: 0;
  margin: 0 0 20px 0;
}

.nc-card-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 10px;
  font-size: 15px;
  color: var(--nc-text-main);
}

.nc-card-list li::before {
  content: "✓";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: var(--nc-accent-green-soft);
  color: var(--nc-accent-green);
  font-size: 14px;
  flex-shrink: 0;
}

/* Actions */

.nc-card-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 20px;
}

/* Primary CTA */

.nc-btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 26px;
  border-radius: 999px;
  background: var(--nc-primary);
  color: #ffffff;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
  box-shadow: 0 10px 25px rgba(4, 82, 106, 0.35);
  transition: transform 0.08s ease-out,
              box-shadow 0.08s ease-out,
              background 0.12s ease-out;
}

.nc-btn-primary:hover {
  background: var(--nc-primary-dark);
  transform: translateY(-1px);
  box-shadow: 0 14px 30px rgba(4, 82, 106, 0.45);
}

/* Secondary text link */

.nc-link-secondary {
  font-size: 14px;
  font-weight: 600;
  color: var(--nc-primary-dark);
  text-decoration: none;
}

.nc-link-secondary:hover {
  text-decoration: underline;
}

/* ===== Responsive ===== */

@media screen and (max-width: 768px) {
  .nc-single-card {
    flex-direction: column;
  }

  .nc-card-left {
    width: 100%;
    flex-direction: column;
    min-height: 200px;
  }

  .nc-card-right {
    padding: 20px 18px 20px 18px;
  }

  .nc-card-title {
    font-size: 20px;
  }

  .nc-card-actions {
    flex-direction: column;
    align-items: flex-start;
  }

  .nc-btn-primary {
    width: 100%;
    justify-content: center;
  }
}

/* ========== STACK EARLY (<= 1200px) ========== */
@media (max-width: 1200px) {

  /* Remove desktop constraints */
  .casino-details-table {
    table-layout: auto;
    min-width: 0;
  }

  .casino-details-table thead {
    display: none;
  }

  .casino-details-table tbody,
  .casino-details-table tbody tr {
    display: block;
    width: 100%;
  }

  .casino-details-table tbody tr {
    background: #ffffff;
    margin-bottom: 16px;
    border-radius: 12px;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.10);
    overflow: hidden;
  }

  .casino-details-table td {
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: 10px 14px;
    border-bottom: 1px solid #e5e7eb;
    position: relative;
    text-align: center;
    font-size: 13px;
  }

  .casino-details-table td:last-child {
    border-bottom: none;
  }

  .casino-details-table td::before {
    content: attr(data-th);
    display: block;
    margin-bottom: 4px;
    font-weight: 600;
    color: #6b7280;
    font-size: 12px;
    text-align: center;
  }

  .ndc-casino-cell {
    text-align: center;
  }

  .casino-details-table a.playnow,
  .casino-details-table a.review {
    width: 100%;
    justify-content: center;
    margin-top: 6px;
  }

  .ndc-casino-chips {
    margin-top: 10px;
  }

  .ndc-offer-cell,
  .ndc-codes-cell {
    white-space: normal;
    word-break: break-word;
    overflow-wrap: anywhere;
  }
}

/* ========== CTA TABLE — STACK EARLIER (<= 1200px) ========== */
@media (max-width: 1200px) {

  .ndc-table-wrapper .casino-details-table {
    table-layout: auto;
    min-width: 0;
  }

  .ndc-table-wrapper .casino-details-table thead {
    display: none !important;
  }

  .ndc-table-wrapper .casino-details-table tbody,
  .ndc-table-wrapper .casino-details-table tbody tr {
    display: block !important;
    width: 100% !important;
  }

  .ndc-table-wrapper .casino-details-table tbody tr {
    background: #ffffff;
    margin-bottom: 16px;
    border-radius: 12px;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.10);
    overflow: hidden;
  }

  .ndc-table-wrapper .casino-details-table td {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box;
    padding: 10px 14px;
    border-bottom: 1px solid #e5e7eb;
    text-align: center;
    font-size: 13px;
    white-space: normal !important;
    word-break: break-word;
    overflow-wrap: anywhere;
  }

  .ndc-table-wrapper .casino-details-table td:last-child {
    border-bottom: none;
  }

  .ndc-table-wrapper .casino-details-table td::before {
    content: attr(data-th);
    display: block;
    margin-bottom: 6px;
    font-weight: 700;
    color: #6b7280;
    font-size: 12px;
    line-height: 1.2;
    text-align: center;
  }

  .ndc-table-wrapper .casino-details-table a.playnow,
  .ndc-table-wrapper .casino-details-table a.review {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-top: 8px;
  }

  .ndc-table-wrapper .ndc-casino-chips {
    margin-top: 10px;
    justify-content: center;
  }
}

/* =========================================================
   FORCE CTA TABLE TO STACK EARLY (<= 1200px)
   Scoped: only tables inside .ndc-info-block .ndc-table-wrapper
   ========================================================= */
@media (max-width: 1200px) {

  .ndc-info-block .ndc-table-wrapper table.casino-details-table thead {
    display: none !important;
  }

  .ndc-info-block .ndc-table-wrapper table.casino-details-table,
  .ndc-info-block .ndc-table-wrapper table.casino-details-table tbody,
  .ndc-info-block .ndc-table-wrapper table.casino-details-table tr,
  .ndc-info-block .ndc-table-wrapper table.casino-details-table td {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .ndc-info-block .ndc-table-wrapper table.casino-details-table tbody tr {
    background: #ffffff !important;
    margin: 0 0 16px !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.10) !important;
  }

  .ndc-info-block .ndc-table-wrapper table.casino-details-table td {
    box-sizing: border-box !important;
    padding: 12px 14px !important;
    border: 0 !important;
    border-bottom: 1px solid #eef2f7 !important;
    text-align: center !important;
    white-space: normal !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
  }

  .ndc-info-block .ndc-table-wrapper table.casino-details-table td:last-child {
    border-bottom: 0 !important;
  }

  .ndc-info-block .ndc-table-wrapper table.casino-details-table td::before {
    content: attr(data-th) !important;
    display: block !important;
    margin: 0 0 6px !important;
    font-weight: 700 !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    color: #6b7280 !important;
    text-align: center !important;
  }

  .ndc-info-block .ndc-table-wrapper table.casino-details-table a.playnow,
  .ndc-info-block .ndc-table-wrapper table.casino-details-table a.review {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    margin-top: 8px !important;
  }

  .ndc-info-block .ndc-table-wrapper .ndc-casino-chips {
    justify-content: center !important;
  }
}

/* ===== Single casino card full layout ===== */

.ndc-single-casino-table {
  width: 100%;
  border-collapse: collapse;
  border-radius: 12px;
  overflow: hidden;
  box-shadow:
    0 0 0 1px rgba(0, 0, 0, 0.04),
    0 10px 25px rgba(0, 0, 0, 0.06);
  background: #ffffff;
  font-size: 1.2rem;
}

.ndc-single-casino-table thead th {
  background: #eef4ff;
  color: #111;
  text-align: left;
  padding: 14px 16px;
  border-bottom: 1px solid #dde4fb;
  font-weight: 400;
}

.ndc-single-casino-table tbody td {
  padding: 14px 16px;
  border-bottom: 1px solid #f0f2f7;
  vertical-align: middle;
}

.ndc-single-casino-table tbody tr:nth-child(even) {
  background: #fbfdff;
}

.ndc-single-casino-table .ndc-col-casino {
  font-weight: 600;
}

.ndc-single-casino-table .ndc-col-bonus {
  font-weight: 400;
  font-size: 1.2rem;
}

.ndc-single-casino-table .ndc-bonus-code {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  background: #f5f5f5;
  font-family: monospace;
  font-size: 1.1rem;
}

.ndc-single-casino-table .ndc-btn-wrap {
  text-align: right;
  white-space: nowrap;
}

.ndc-single-casino-table .ndc-btn-primary,
.ndc-single-casino-table .ndc-btn-secondary {
  display: inline-block;
  padding: 10px 18px;
  border-radius: 999px;
  text-align: center;
  text-decoration: none;
  font-weight: 600;
  font-size: 1.2rem;
  border: none;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12);
}

.ndc-single-casino-table .ndc-btn-primary {
  background: #1ea362;
  color: #fff;
}

.ndc-single-casino-table .ndc-btn-secondary {
  background: #f1f5ff;
  color: #0b53b9;
  margin-right: 8px;
  box-shadow: none;
}

.ndc-single-casino-table .ndc-btn-primary:hover,
.ndc-single-casino-table .ndc-btn-primary:focus {
  background: #17804c;
  color: #fff;
}

.ndc-single-casino-table .ndc-btn-secondary:hover,
.ndc-single-casino-table .ndc-btn-secondary:focus {
  background: #e0e9ff;
  color: #083f8d;
}

@media screen and (max-width: 680px) {
  .ndc-fullwidth-block-inner,
  .ndc-fullwidth-block .ndc-info-block,
  .ndc-fullwidth-block .ndc-table-wrapper {
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
  }

  .ndc-single-casino-table {
    box-shadow: none;
    border-radius: 8px;
  }

  .ndc-single-casino-table thead {
    display: none;
  }

  .ndc-single-casino-table tbody,
  .ndc-single-casino-table tr,
  .ndc-single-casino-table td {
    display: block;
    width: 100%;
  }

  .ndc-single-casino-table tbody tr {
    border-radius: 12px;
    box-shadow:
      0 0 0 1px rgba(0, 0, 0, 0.04),
      0 8px 20px rgba(0, 0, 0, 0.06);
    margin-bottom: 16px;
    background: #fff;
  }

  .ndc-single-casino-table tbody td {
    border-bottom: 1px solid #f0f2f7;
    padding: 10px 14px;
  }

  .ndc-single-casino-table tbody td:last-child {
    border-bottom: none;
  }

  .ndc-single-casino-table td[data-th]::before {
    content: attr(data-th) ": ";
    display: block;
    font-size: 1.1rem;
    font-weight: 500;
    text-transform: uppercase;
    opacity: 0.7;
    margin-bottom: 3px;
  }

  .ndc-single-casino-table .ndc-col-casino {
    text-align: left;
    font-size: 1.2rem;
  }

  .ndc-single-casino-table .ndc-btn-wrap {
    text-align: center;
    padding-top: 8px;
  }

  .ndc-single-casino-table .ndc-btn-primary,
  .ndc-single-casino-table .ndc-btn-secondary {
    display: block;
    width: 100%;
    margin: 0 0 8px;
  }
}

/* Let columns size naturally */
.ndc-single-casino-table table.casino-details-table {
  table-layout: auto;
}

/* Outer wrapper for this specific hero table */
.ndc-table-wrapper {
  max-width: 1200px;
  margin: 16px auto 0;
  overflow-x: auto;
}

/* The actual plugin table */
.ndc-table-wrapper .ndc-single-casino-table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 1.3rem;
}

.ndc-table-wrapper .ndc-single-casino-table th,
.ndc-table-wrapper .ndc-single-casino-table td {
  padding: 10px 12px;
  text-align: center;
  border-bottom: 1px solid #e1e7f3;
}

.ndc-table-wrapper .ndc-single-casino-table thead {
  background: #f0f4ff;
}

.ndc-info-block + .ndc-table-wrapper {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 680px) {
  .ndc-table-wrapper {
    padding: 0 10px;
  }
}

/* Small inner padding so the last column has space from the edge */
.ndc-single-casino-table {
  padding-right: 12px;
}

.ndc-single-casino-table table.casino-details-table th:last-child,
.ndc-single-casino-table table.casino-details-table td:last-child {
  padding-right: 20px;
}

/* Inline Compliance & Safety Footer Menu */
.footer-compliance-inline {
  text-align: center;
  font-size: 0.9rem;
  background: #f4f8fc;
  border-top: 1px solid #cce4ff;
  margin-top: 15px;
  padding: 12px 10px;
  color: #003366;
}

.footer-compliance-inline a {
  color: #005999;
  text-decoration: none;
  margin: 0 6px;
  font-weight: 500;
  font-size: 0.9rem;
  transition: color 0.2s ease;
}

.footer-compliance-inline a:hover {
  color: #003366;
  text-decoration: underline;
}

.footer-compliance-inline::before {
  content: "Compliance & Safety: ";
  font-weight: 600;
  color: #00264d;
  margin-right: 4px;
}

.footer-col a {
  line-height: 1.55;
}

/* Generic responsive table wrapper (NOT the casino plugin table) */
.ndc-responsive-table {
  max-width: 1024px;
  margin: 1.5rem auto;
  padding: 0 12px;
  box-sizing: border-box;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.ndc-responsive-table > table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.ndc-responsive-table th,
.ndc-responsive-table td {
  white-space: normal;
  word-break: break-word;
  overflow-wrap: anywhere;
}

.ndc-responsive-table th:last-child,
.ndc-responsive-table td:last-child {
  width: 34%;
}

/* Add spacing between nav and page title on News archive */
.category-news #content {
  padding-top: 48px;
}