.admin-bar .header{top:32px;}
.screen-reader-text{border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}
.screen-reader-text:focus{background-color:#eee;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000;}
.wpcf7-not-valid {border-color: 1px solid #dc3232 !important;}
input.wpcf7-not-valid::placeholder {color: #dc3232 !important; }
input.wpcf7-not-valid::-moz-placeholder {color: #dc3232 !important; opacity: 1; }
input.wpcf7-not-valid:-ms-input-placeholder { color: #dc3232 !important; }
input.wpcf7-not-valid::-ms-input-placeholder { color: #dc3232 !important;}
.wpcf7-form-control.wpcf7-radio.wpcf7-not-valid .wpcf7-list-item{ border-color:  #dc3232 !important;}
.custom-checkbox .wpcf7-validates-as-required input::before{ border: 1px solid #dc3232 !important;}
.wpcf7 .screen-reader-response{display: none !important;}
.wpcf7-not-valid-tip {display: none !important;}
.wpcf7-form.invalid .wpcf7-response-output {color: #dc3232 !important;}
button.loading, .button.loading  {pointer-events: none;color: transparent!important}
button.loading:after, .button.loading:after {content: "";height: 30px;width: 30px;border: 3px solid #5D2DE1;border-bottom: 3px solid transparent!important;display: block;position: absolute;right: 0;left: 0;top: 0;bottom: 0;margin: auto;border-radius: 50%;-webkit-animation: spin 4s linear infinite;animation: spin 4s linear infinite}
@keyframes spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.category-text__inner.online-slots{
    max-width: unset;
    margin-top: 0;
}
.category-text__inner.online-slots code {
    padding: 24px;
    font-size: 14px;
    line-height: 20px;
    color: rgba(255, 255, 255, 0.68);
    background-color: var(--dark-grey);
    border-radius: 24px;
    box-shadow: 0px 4px 8px 0px #08101629, -2px -2px 4px 0px #E0E0FF05, 0px 1px 2px 0px #0810163D;
    overflow: hidden;
    position: relative;
    display: block;
    width: 100%;
}
.zero_results.error {
    width: 100%;
    padding: 24px 0;
    font-weight: 700;
    color: #7200FF;
    text-align: center;
}

/* Casino Review TOC */
.casino-review-toc {margin: 12px 0;}

/* Callout boxes in casino review content */
.casino-content-box-inner .border-section {border-left: 3px solid #AD60FA; padding: 20px 24px; background: rgba(173, 96, 250, 0.05); border-radius: 0 16px 16px 0; margin: 24px 0; line-height: 1.75; font-size: 15px;}
.casino-content-box-inner .border-section p:last-child {margin-bottom: 0;}
.casino-content-box-inner .border-text {background: rgba(255, 255, 255, 0.02); padding: 24px; border-radius: 16px; border: 1px solid rgba(255, 255, 255, 0.06); margin: 24px 0;}
.casino-content-box-inner .border-text p:last-child {margin-bottom: 0;}

/* Players Reviews Section */
#players_reviews {padding: 12px 0;}
#players_reviews .reviews {background-color: var(--dark-grey); border-radius: 24px; padding: 24px; box-shadow: 0px 4px 8px 0px #08101629, -2px -2px 4px 0px #E0E0FF05, 0px 1px 2px 0px #0810163D;}
#players_reviews .reco_text h3 {font-size: 18px; line-height: 24px; margin: 0 0 20px; color: var(--white);}
#players_reviews .max-review {display: flex; padding: 20px; background: rgba(255, 255, 255, 0.02); border: 1px solid rgba(255, 255, 255, 0.06); border-radius: 16px; margin-bottom: 12px; transition: border-color 0.2s ease;}
#players_reviews .max-review:hover {border-color: rgba(173, 96, 250, 0.2);}
#players_reviews .max-review .para-img {display: flex; flex-direction: column-reverse; text-align: center;}
#players_reviews .max-review .para-img img {margin: 0 auto 5px; width: 50px; height: 50px; border-radius: 50%; border: 2px solid rgba(255, 255, 255, 0.08);}
.para-img-wrap {margin: 0 16px 0 0; padding: 12px; width: 100px; background-color: rgba(255, 255, 255, 0.03); border-radius: 12px; flex-shrink: 0;}
.para-img-wrap .name-r {font-size: 13px; font-weight: 500; color: var(--white); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; max-width: 76px;}
.comment-content-wrap {flex: 1;}
.comment-content-wrap .dat-rev {display: block; font-size: 12px; color: rgba(255, 255, 255, 0.35); margin-bottom: 8px; letter-spacing: 0.02em;}
.comment-content-wrap .star-rev {display: flex; align-items: center; gap: 8px; margin-bottom: 10px;}
.comment-content-wrap .star-rev strong {font-size: 13px; color: rgba(255, 255, 255, 0.5); font-weight: 400; display: flex; align-items: center; gap: 6px;}
.comment-content-wrap .star-rev .colr-num {font-style: normal; color: #AD60FA; font-weight: 600; font-size: 14px;}
.comment-content-wrap .star-rev .stars {display: flex; gap: 2px; align-items: center;}
.comment-content-wrap .star-rev .stars img {width: 14px; height: 14px;}
.comment-content-wrap .rev-text {font-size: 14px; line-height: 1.65; color: rgba(255, 255, 255, 0.68); margin: 0;}
.review-edit-form {display: none;}
.empty-review-hide, .empty-msg-hide {display: none;}
.dashboard-empty-icon {width: 50px;}
.profile-form-error.form_error.update-form-success-msg { color: green; font-size: 14px; font-weight: bold; padding: 10px 16px; position: fixed; top: 118px; right: 0; z-index: 99999999; background-color: var(--white); border-radius: 16px 0 0 16px; }

.results_wrapper .search-result__item {background-color: black;border-radius: 10px;padding: 8px;margin-bottom: 3px;}
.results_wrapper .search-result__item a {display: flex;align-items: center;text-decoration: none;}
.results_wrapper .search-result__item img {width: 100px;height: 56px;}
.results_wrapper .search-result__content {padding: 8px 15px;text-align: center;font-size: 12px;line-height: 16px;flex: 1;}
.results_wrapper .search-result__content .search-result__title {margin: 0 0 4px 0;font-size: 16px;line-height: 20px;color: var(--white);font-weight: 500;}
.results_wrapper .search-result__content p {margin: 0;}
.add_review_wrapper {margin: 20px 0 0 0; text-align: center;}
.add_review_wrapper a {display: inline-block; padding: 12px 28px; font-size: 14px; font-weight: 600; text-decoration: none; color: var(--white); background: linear-gradient(132deg, #AD60FA 0.79%, #5D2DE1 109.62%); border-radius: 12px; transition: opacity 0.2s ease, transform 0.2s ease; -webkit-background-clip: unset; -webkit-text-fill-color: unset;}
.add_review_wrapper a:hover {opacity: 0.9; transform: translateY(-1px);}

/* loader — modern spinner (matches auth popup style) */
.loading-wraper {
    display: flex;
    justify-content: center;
    padding: 20px 0;
}
.lds-default {
    display: none;
    width: 32px;
    height: 32px;
    border: 3px solid rgba(93, 45, 225, 0.2);
    border-top-color: #5D2DE1;
    border-radius: 50%;
    animation: modern-spin 0.7s linear infinite;
    box-sizing: border-box;
}
.lds-default div {
    display: none;
}
@keyframes modern-spin {
    to { transform: rotate(360deg); }
}

/* languge swticher */
.custom-lang-switcher {
  position: relative;
  display: inline-block;
  cursor: pointer;
}
.custom-lang-switcher img {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}
.current-lang {
  border-radius: 50%;
  overflow: hidden;
}
.lang-dropdown { position: absolute; top:calc(100% + 8px); left: 50%; transform: translateY(8px) translateX(-50%); display: flex; flex-wrap: wrap; padding: 8px; gap: 6px; border-radius: 12px; background-color: #161617; box-shadow: 0 4px 20px rgba(0,0,0,0.35); list-style: none; margin: 0; opacity: 0; visibility: hidden; transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease; z-index: 3; width: auto; min-width: 40px;}
.lang-dropdown li {
  margin: 0;
}
.lang-dropdown li::before{
  content: '';
  background-color: unset;
}
.lang-dropdown li a {display: block; border-radius: 50%; transition: transform 0.15s ease;}
.lang-dropdown li a:hover {transform: scale(1.15);}
.lang-dropdown li a img {border-radius: 50%;}
.custom-lang-switcher:hover .lang-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) translateX(-50%);
}
.custom-lang-switcher .current-lang {transition: transform 0.2s ease;}
.custom-lang-switcher:hover .current-lang {transform: scale(1.1);}

.different-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style: none;
  padding: 0;
  margin: 0;
}
.different-list li.item {
  width: calc(50% - 5px);
  border-radius: 16px;
  padding: 24px;
  margin-bottom: 10px;
  background-color: var(--dark-grey);
  background-image: none;
  list-style: none;
  position: relative;
}
.different-list li.item::before {
  display: none;
}
.different-list li.item .icon {
  display: inline-block;
  width: 24px;
  height: 24px;
  margin: 0 8px -4px 0;
  filter: brightness(0) invert(1);
  object-fit: contain;
  vertical-align: middle;
}
.different-list li.item .title {
  display: inline;
  margin: 0 0 8px 0;
  font-size: 16px;
  line-height: 1.4;
}
.different-list li.item .title::after {
  content: "";
  display: block;
  margin-bottom: 8px;
}
.different-list li.item::marker {
  content: none;
}
.what_most_played > figure {
  float: left;
  margin: 0 20px 12px 0;
  width: 140px;
}
.what_most_played > figure img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
}
.what_most_played .movie-title {
  clear: both;
  padding-top: 20px;
}
.what_most_played .movie-image {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 16px;
  margin-bottom: 20px;
  background: rgba(255, 255, 255, 0.04);
  border-radius: 16px;
}
.what_most_played .movie-image .image-wrapper {
  flex: 1 1 calc(20% - 10px);
  min-width: 80px;
  max-width: calc(20% - 10px);
}
.what_most_played .movie-image .image-wrapper img {
  width: 100%;
  height: auto;
  max-height: 132px;
  display: block;
  border-radius: 10px;
  object-fit: cover;
}
.main-layout-wrapper .payment-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 0;
  list-style: none;
}
.main-layout-wrapper .payment-list .item {
  width: calc((100% - 50px) / 6);
  height: 56px;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FFFFFF;
  border-radius: 12px;
  padding: 10px 14px;
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.main-layout-wrapper .payment-list .item:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(173, 96, 250, 0.15);
}
.main-layout-wrapper .payment-list .item img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.best-mobile__image {float: left; margin: 0 20px 12px 0; width: 140px;}
.best-mobile__image img {width: 100%; height: auto; display: block;}

/* Trends feature cards (ul.list > li.item-wrapper) */
.best_online-wrapper ul.list {
  list-style: none;
  padding: 0;
  margin: 24px 0 0 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.best_online-wrapper ul.list .item-wrapper {
  background-color: var(--dark-grey);
  border-radius: 16px;
  padding: 24px;
  background-image: none;
}
.best_online-wrapper ul.list .item-wrapper::before {
  display: none;
}
.best_online-wrapper ul.list .item-wrapper::marker {
  content: none;
}
.best_online-wrapper ul.list .inner-wrapper {
  display: flex;
  align-items: flex-start;
  gap: 16px;
}
.best_online-wrapper ul.list .side-image {
  flex-shrink: 0;
  width: 48px;
  margin: 0;
}
.best_online-wrapper ul.list .side-image img {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: block;
}
.best_online-wrapper ul.list .list-content {
  flex: 1;
}
.best_online-wrapper ul.list .list-content .title {
  margin: 0 0 12px 0;
}
.best_online-wrapper ul.list .list-content .list-text p {
  background-image: none;
  padding-left: 0;
}

/* VIP / Banking options image + text */
.banking_options_playthrough_wrapper .inner-wrapper {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 16px;
}
.banking_options_playthrough_wrapper .cryptocurrency_options_image {
  width: 140px;
  height: auto;
  border-radius: 12px;
  flex-shrink: 0;
}

.category-text__inner .wp-video {max-width: 640px; width: 100%; margin: 24px auto; border-radius: 16px; overflow: hidden;}
.category-text__inner .wp-video video {width: 100%; height: auto;}

.features_focus_reviews_wrapper .inner-wrapper.list-wrapper{
  position: relative;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.features_focus_reviews_wrapper .features_focus_title:first-child {
  font-size: 17px;
  line-height: 1.4;
  color: var(--white);
  margin: 0 0 20px;
}
.features_focus_reviews_wrapper .inner-wrapper.list-wrapper .the_list_item {
  width: calc(50% - 8px);
  border-radius: 16px;
  padding: 24px;
  margin: 0;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.06);
  transition: border-color 0.2s ease, transform 0.2s ease;
}
.features_focus_reviews_wrapper .inner-wrapper.list-wrapper .the_list_item:hover {
  border-color: rgba(173, 96, 250, 0.2);
  transform: translateY(-2px);
}
.features_focus_reviews_wrapper .the_list_item .item_image {
  width: 44px;
  height: 44px;
  object-fit: contain;
  margin: 0 0 14px;
  filter: brightness(0) invert(1) opacity(0.85);
}
.features_focus_reviews_wrapper .the_list_item .features_focus_title {
  font-size: 15px;
  line-height: 1.4;
  color: var(--white);
  margin: 0 0 8px;
  font-weight: 600;
}
.features_focus_reviews_wrapper .the_list_item .features_focus_text {
  font-size: 13px;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.55);
  margin: 0;
}
/* ========================================
   Best Mobile Wrapper — icons/bonuses section
   ======================================== */
.best-mobile-wrapper {
  background-color: var(--dark-grey);
  border-radius: 24px;
  padding: 32px;
  box-shadow: 0px 4px 8px 0px #08101629, -2px -2px 4px 0px #E0E0FF05, 0px 1px 2px 0px #0810163D;
}
.best-mobile-wrapper > .title {
  font-size: 20px;
  line-height: 1.3;
  color: var(--white);
  margin: 0 0 16px;
}
.best-mobile-wrapper .mobile-wrapper-text {
  font-size: 15px;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.68);
  margin: 0 0 24px;
}
.best-mobile-wrapper .mobile-wrapper-text p {
  margin: 0;
}
.best-mobile-wrapper .inner-wrapper {
  display: flex;
  gap: 32px;
  align-items: flex-start;
}
.best-mobile-wrapper .right-wrapper {
  flex: 1;
}
.best-mobile-wrapper .right-wrapper .inner-title {
  font-size: 16px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.85);
  margin: 0 0 20px;
  font-weight: 500;
}
.best-mobile-wrapper .list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0 0 24px;
}
.best-mobile-wrapper .list .item {
  flex: 1 1 calc(25% - 9px);
  min-width: 120px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;
  padding: 20px 16px;
  text-align: center;
  transition: border-color 0.2s ease, transform 0.2s ease;
}
.best-mobile-wrapper .list .item:hover {
  border-color: rgba(173, 96, 250, 0.25);
  transform: translateY(-2px);
}
.best-mobile-wrapper .list .item img {
  width: 48px;
  height: 48px;
  object-fit: contain;
  margin: 0 auto 12px;
  display: block;
  filter: brightness(0) invert(1) opacity(0.85);
}
.best-mobile-wrapper .list .item .inner-text {
  font-size: 13px;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.75);
  margin: 0;
  font-weight: 500;
}
.best-mobile-wrapper .left-wrapper {
  flex: 1;
}
.best-mobile-wrapper .left-wrapper p {
  font-size: 14px;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.6);
}

/* ========================================
   Payment-content / Online-slots — content sections
   ======================================== */
.payment-content {
  padding: 20px 0;
}
.online-slots h2 {
  font-size: 22px;
  line-height: 1.3;
  color: var(--white);
  margin: 0 0 16px;
}
.online-slots h3 {
  font-size: 18px;
  line-height: 1.4;
  color: var(--white);
  margin: 0 0 14px;
}
.online-slots h4 {
  font-size: 16px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.9);
  margin: 0 0 12px;
}
.online-slots p {
  font-size: 15px;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.68);
  margin: 0 0 16px;
}
.online-slots a {
  color: rgba(255, 255, 255, 0.68);
  text-decoration: underline;
  transition: color 0.2s ease;
}
.online-slots a:hover {
  color: #fff;
  text-decoration: underline;
}
.online-slots ol {
  padding-left: 0;
  margin: 0 0 20px;
}
.online-slots ol li {
  font-size: 15px;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.68);
  margin-bottom: 8px;
}
.online-slots strong {
  color: rgba(255, 255, 255, 0.9);
  font-weight: 600;
}
.online-slots blockquote {
  background: rgba(255, 255, 255, 0.02);
  border-left: 3px solid #AD60FA;
  border-radius: 0 16px 16px 0;
  padding: 24px 28px;
  margin: 24px 0;
}
.online-slots blockquote h3 {
  color: #AD60FA;
  margin-bottom: 12px;
}
.online-slots blockquote p:last-child {
  margin-bottom: 0;
}
.online-slots img.alignleft {
  float: left;
  margin: 4px 20px 16px 0;
  border-radius: 12px;
  max-width: 140px;
  height: auto;
}

/* ========================================
   SEO With-Image sections
   ======================================== */
.seo-with-image__wrap {
  display: flex;
  gap: 32px;
  align-items: flex-start;
  padding: 20px 0;
}
.seo-with-image__img {
  flex-shrink: 0;
  width: 160px;
}
.seo-with-image__img img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 16px;
}
.seo-with-image__content {
  flex: 1;
}
.seo-with-image__content h2,
.seo-with-image__content h3 {
  color: var(--white);
  margin: 0 0 14px;
}
.seo-with-image__content p {
  font-size: 15px;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.68);
}
.seo-with-image__content a {
  color: #AD60FA;
  text-decoration: none;
}
.seo-with-image__content a:hover {
  color: #c490fb;
  text-decoration: underline;
}

/* ========================================
   Category Casino cards
   ======================================== */
.category-casino__item {
  background-color: var(--dark-grey);
  border-radius: 16px;
  padding: 24px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  transition: border-color 0.2s ease, transform 0.2s ease;
}
.category-casino__item:hover {
  border-color: rgba(173, 96, 250, 0.2);
  transform: translateY(-2px);
}
.category-casino__logo img {
  border-radius: 12px;
}
.category-casino__logo img[src$=".svg"] {
  background: transparent;
}

/* WordPress gallery — payment/provider logos */
.category-text__inner [id^="gallery-"] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 20px 0;
}
.category-text__inner [id^="gallery-"] .gallery-item {
    float: none;
    margin: 0;
    padding: 0;
    width: calc((100% - 20px) / 3);
    min-width: 0;
    text-align: center;
}
.category-text__inner [id^="gallery-"] .gallery-item .gallery-icon {
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #FFFFFF;
    border-radius: 12px;
    padding: 4px 16px;
    margin: 0;
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.category-text__inner [id^="gallery-"] .gallery-item .gallery-icon:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(173, 96, 250, 0.15);
}
.category-text__inner [id^="gallery-"] .gallery-item img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    border: none;
}
.category-text__inner [id^="gallery-"] br,
.category-text__inner [id^="gallery-"] > p {
    display: none;
}
/* Respect WordPress gallery column counts */
.category-text__inner .gallery-columns-4 .gallery-item {
    width: calc(25% - 7.5px);
}
.category-text__inner .gallery-columns-5 .gallery-item {
    width: calc(20% - 8px);
}
.category-text__inner .gallery-columns-5 .gallery-item .gallery-icon {
    height: 48px;
    padding: 6px 12px;
}
/* Game thumbnail galleries (5-column) — only on new-online-casinos pages */
.term-new-online-casinos .gallery-columns-5 .gallery-item,
.term-nieuwe-online-casino .gallery-columns-5 .gallery-item {
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: calc(20% - 6.4px) !important;
    flex: 0 0 calc(20% - 6.4px) !important;
}
.term-new-online-casinos .gallery-columns-5 .gallery-item .gallery-icon,
.term-nieuwe-online-casino .gallery-columns-5 .gallery-item .gallery-icon {
    height: 0;
    padding-bottom: 75%;
    display: block;
    position: relative;
    background-color: transparent;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
}
.term-new-online-casinos .gallery-columns-5 .gallery-item .gallery-icon a,
.term-nieuwe-online-casino .gallery-columns-5 .gallery-item .gallery-icon a {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    display: block;
}
.term-new-online-casinos .gallery-columns-5 .gallery-item img,
.term-nieuwe-online-casino .gallery-columns-5 .gallery-item img {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    border-radius: 10px;
    display: block;
}

/* ========================================
   Gallery style variants (via [gallery style="X"])
   logos      = white bg boxes, contained logos (default look)
   thumbnails = game screenshots, full cover, no bg, rounded
   providers  = larger logos, transparent bg, no box
   ======================================== */

/* style="logos" — explicit white background boxes (same as default) */
.gallery-style-logos .gallery-item .gallery-icon {
    background-color: #FFFFFF;
    border-radius: 12px;
    padding: 4px 16px;
    height: 56px;
}

/* style="thumbnails" — game screenshots, full cover */
.category-text__inner .gallery-style-thumbnails { gap: 8px !important; }
.category-text__inner .gallery-style-thumbnails .gallery-item .gallery-icon {
    height: 0;
    padding-bottom: 75%;
    display: block;
    position: relative;
    background-color: transparent;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    border-radius: 10px;
    overflow: hidden;
}
.category-text__inner .gallery-style-thumbnails .gallery-item .gallery-icon a {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    display: block;
}
.category-text__inner .gallery-style-thumbnails .gallery-item img {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    border-radius: 10px;
}
.category-text__inner .gallery-style-thumbnails .gallery-item .gallery-icon:hover {
    transform: none;
    box-shadow: none;
}

/* style="providers" — larger logos, transparent bg, no box */
.gallery-style-providers .gallery-item .gallery-icon {
    background-color: transparent;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    height: 72px;
    padding: 8px 20px;
}
.gallery-style-providers .gallery-item .gallery-icon:hover {
    border-color: rgba(255, 255, 255, 0.15);
}
.gallery-style-providers .gallery-item img {
    max-height: 56px;
}

/* Game frame placeholder (no screenshot) */
.game-frame-placeholder {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  background: var(--dark-grey);
  border-radius: 24px;
  box-shadow: 0px 4px 8px 0px #08101629, -2px -2px 4px 0px #E0E0FF05, 0px 1px 2px 0px #0810163D;
}
.game-frame-placeholder__logo {
  max-width: 120px;
  max-height: 120px;
  object-fit: contain;
  border-radius: 16px;
}
.game-frame-placeholder__title {
  font-size: 20px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.85);
  text-align: center;
  padding: 0 20px;
}

.game-frame-main .game-frame.is-full-screen {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9999;
  height: 100vh;
}

.banner__search-main.hide {
  display: none !important;
}

.all-languages, .all-cat-wrap {display: none;}
.all-languages.active, .all-cat-wrap.active{display: block;}

/* Review TOC — collapsible (game + casino) */
.game-review-toc, .casino-review-toc {margin: 12px 0;}
.game-review-toc .guide-toc__title, .casino-review-toc .guide-toc__title {cursor: pointer; margin: 0; padding: 0; border-bottom: none; user-select: none; transition: margin 0.2s ease, padding 0.2s ease, border-color 0.2s ease;}
.game-review-toc .guide-toc__title::after, .casino-review-toc .guide-toc__title::after {content: ''; display: inline-block; width: 6px; height: 6px; border-right: 2px solid rgba(255,255,255,0.4); border-bottom: 2px solid rgba(255,255,255,0.4); transform: rotate(45deg); margin-left: auto; transition: transform 0.2s ease;}
.game-review-toc.is-open .guide-toc__title, .casino-review-toc.is-open .guide-toc__title {margin: 0 0 16px; padding: 0 0 14px; border-bottom: 1px solid rgba(255, 255, 255, 0.06);}
.game-review-toc.is-open .guide-toc__title::after, .casino-review-toc.is-open .guide-toc__title::after {transform: rotate(-135deg);}
.game-review-toc .guide-toc__list, .casino-review-toc .guide-toc__list {max-height: 0; overflow: hidden; transition: max-height 0.3s ease;}
.game-review-toc.is-open .guide-toc__list, .casino-review-toc.is-open .guide-toc__list {max-height: 600px;}

/* Countries — flags only (hide names), compact circle style */
.casino-countries .single-country > p {display: none;}
.casino-countries .single-country__icon {margin: 0; width: 32px; height: 32px; min-height: 32px;}
.casino-countries .single-country__icon img {width: 32px; height: 32px; border-radius: 50%; object-fit: cover;}
.all-countries-wrap .single-country > p {display: none;}
.all-countries-wrap .single-country__icon {margin: 0; width: 32px; height: 32px; min-height: 32px;}
.all-countries-wrap .single-country__icon img {width: 32px; height: 32px; border-radius: 50%; object-fit: cover;}

/* Game buttons row (Play demo + Play for Real Money) */
.game-buttons-row {display: flex; gap: 8px; margin-top: 8px;}
.game-buttons-row .button {flex: 1; text-align: center; padding: 16px 12px 14px; width: auto;}
.game-buttons-row .where-to-play-cta {background: linear-gradient(132deg, #22c55e 0.79%, #16a34a 109.62%);}
.game-buttons-row .where-to-play-cta:hover {opacity: 0.9;}

/* RTP Context Labels */
.rtp-context {font-size: 11px; font-weight: 600; padding: 2px 6px; border-radius: 4px; margin-left: 4px; white-space: nowrap; vertical-align: middle;}
.rtp-above {color: #22c55e; background: rgba(34, 197, 94, 0.1);}
.rtp-below {color: #ef4444; background: rgba(239, 68, 68, 0.1);}
.rtp-average {color: rgba(255, 255, 255, 0.5); background: rgba(255, 255, 255, 0.05);}

/* Volatility Indicator */
.volatility-indicator {display: inline-flex; align-items: flex-end; gap: 2px; margin-right: 6px; vertical-align: middle;}
.volatility-bar {display: inline-block; width: 4px; border-radius: 1px; background: rgba(255, 255, 255, 0.12);}
.volatility-bar:nth-child(1) {height: 8px;}
.volatility-bar:nth-child(2) {height: 12px;}
.volatility-bar:nth-child(3) {height: 16px;}
.volatility-indicator[data-level="1"] .volatility-bar.active {background: #22c55e;}
.volatility-indicator[data-level="2"] .volatility-bar.active {background: #eab308;}
.volatility-indicator[data-level="3"] .volatility-bar.active {background: #f97316;}

/* Taxonomy TOC — collapsible (reuse game/casino selectors) */
.taxonomy-toc {margin: 12px 0;}
.taxonomy-toc .guide-toc__title {cursor: pointer; margin: 0; padding: 0; border-bottom: none; user-select: none; transition: margin 0.2s ease, padding 0.2s ease, border-color 0.2s ease;}
.taxonomy-toc .guide-toc__title::after {content: ''; display: inline-block; width: 6px; height: 6px; border-right: 2px solid rgba(255,255,255,0.4); border-bottom: 2px solid rgba(255,255,255,0.4); transform: rotate(45deg); margin-left: auto; transition: transform 0.2s ease;}
.taxonomy-toc.is-open .guide-toc__title {margin: 0 0 16px; padding: 0 0 14px; border-bottom: 1px solid rgba(255, 255, 255, 0.06);}
.taxonomy-toc.is-open .guide-toc__title::after {transform: rotate(-135deg);}
.taxonomy-toc .guide-toc__list {max-height: 0; overflow: hidden; transition: max-height 0.3s ease; list-style: none; padding: 0; margin: 0;}
.taxonomy-toc.is-open .guide-toc__list {max-height: 600px;}

/* ---- Game page mobile fixes ---- */
@media only screen and (max-width: 991px) {
  /* Show review TOC on mobile (overrides .guide-toc {display:none} in responsive.css) */
  .game-review-toc, .casino-review-toc, .taxonomy-toc {display: block !important;}

  /* Game page casino cards — match homepage behavior (buttons in expanded content, not header) */
  #where-to-play.hot-bonuses {padding: 0;}
  #where-to-play .hot-bonuses__item-head .top-casino__btn {display: none;}
  #where-to-play .hot-bonuses__content .top-casino__btn {padding: 15px 0 0 0; display: flex;}
}

/* Bug 3: Let key features & T&Cs popups escape overflow:hidden on all screens */
.top-casino__box {
  overflow: visible !important;
}
.top-casino__img {
  overflow: visible !important;
}
.top-casino__img > img {
  border-radius: 16px;
}

/* ---- Mobile fixes (≤767px) ---- */
@media only screen and (max-width: 767px) {

  /* Bug 2: Author box / banner date — column layout on mobile */
  .author-box__detail {
    flex-direction: column !important;
    margin: 0 !important;
    gap: 6px;
  }
  .author-box__detail .author-box__item {
    margin: 0 !important;
    padding: 0 !important;
  }
  .category-banner__date,
  .latest-blog__author {
    flex-wrap: wrap;
    word-break: break-word;
  }

  /* Bug 3: Casino card — key features as centered modal on mobile */
  .top-casino__features {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: calc(100vw - 48px) !important;
    max-width: 340px !important;
    max-height: 80vh !important;
    overflow-y: auto !important;
    z-index: 99999 !important;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0.2s ease;
  }
  .top-casino__info:hover > .top-casino__features,
  .top-casino__info:focus-within > .top-casino__features,
  .top-casino__info.active > .top-casino__features {
    opacity: 1 !important;
    visibility: visible !important;
  }

  /* Bug 3: T&Cs tooltip — centered modal on mobile */
  .tc-text .TC_block {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    bottom: auto !important;
    right: auto !important;
    min-width: auto !important;
    width: calc(100vw - 48px) !important;
    max-width: 360px !important;
    max-height: 80vh !important;
    overflow-y: auto !important;
    z-index: 99999 !important;
    margin-bottom: 0 !important;
  }
  .tc-text .TC-inner:after {
    display: none;
  }

  /* Bug 4: Providers & payment methods — 3 per row on mobile */
  .game-provider-list {
    width: calc(33.33% - 6px) !important;
  }
  .payment-methods-list {
    width: calc(33.33% - 6px) !important;
  }
  .category-feature__pay .footer-logo__box {
    width: calc(33.33% - 8px) !important;
    height: 52px !important;
  }
  .category-feature__pay.layout-thumbnails .footer-logo__box {
    width: calc(33.33% - 8px) !important;
    height: 0 !important;
    padding-bottom: calc(33.33% * 0.75) !important;
  }
  .category-text__inner [id^="gallery-"] .gallery-item {
    width: calc(33.33% - 6px) !important;
  }
  .term-new-online-casinos .gallery-columns-5 .gallery-item,
  .term-nieuwe-online-casino .gallery-columns-5 .gallery-item {
    flex: 0 0 calc(33.33% - 6px) !important;
    width: calc(33.33% - 6px) !important;
  }
  .main-layout-wrapper .payment-list .item {
    width: calc(33.33% - 7px) !important;
  }

  /* Bug 7: Star icon — don't overlap casino logo on mobile */
  .top-casino__item .top-casino__review {
    padding: 2px 6px;
    top: 4px !important;
    right: 4px !important;
  }
  .top-casino__item .top-casino__review img {
    width: 10px;
    height: 10px;
    margin: 0 4px 0 0;
  }
  .top-casino__item .top-casino__review span {
    font-size: 10px;
  }
}

/* AAMS banner — Italian footer */
/* ========================================
   Casino Fit Picture — image + content side-by-side
   (e.g. "CUM GĂSIM CELE MAI BUNE CAZINOURI MOBILE?")
   ======================================== */
.casino-top-wrapper.best-free-wrapper {
  display: flex;
  gap: 28px;
  align-items: flex-start;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 20px;
  padding: 28px;
}
.casino-top-wrapper.best-free-wrapper:hover {
  border-color: rgba(173, 96, 250, 0.15);
}
.casino-top-wrapper.best-free-wrapper figure.side-image {
  flex-shrink: 0;
  width: 200px;
  margin: 0;
}
.casino-top-wrapper.best-free-wrapper figure.side-image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 14px;
  object-fit: cover;
}
.casino-top-wrapper.best-free-wrapper .casino-top-content {
  flex: 1;
  min-width: 0;
}
.casino-top-wrapper.best-free-wrapper .casino-top-content h3 {
  font-size: 18px;
  line-height: 1.4;
  color: var(--white);
  margin: 0 0 14px;
}
.casino-top-wrapper.best-free-wrapper .casino-top-content p {
  font-size: 14px;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.65);
}
.casino-top-wrapper.best-free-wrapper .casino-top-content hr {
  border: none;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  margin: 16px 0;
}

/* ========================================
   Features Mobile Casinos — image + content
   (e.g. "TOP CARACTERISTICI MOBILE")
   ======================================== */
.features_mobile_casinos-wrapper > .inner-wrapper {
  display: flex;
  gap: 28px;
  align-items: flex-start;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 20px;
  padding: 28px;
}
.features_mobile_casinos-wrapper > .inner-wrapper:hover {
  border-color: rgba(173, 96, 250, 0.15);
}
.features_mobile_casinos-wrapper .features-image {
  flex-shrink: 0;
  width: 200px;
  height: auto;
  border-radius: 14px;
  object-fit: cover;
}
.features_mobile_casinos-wrapper .content-wrap {
  flex: 1;
  min-width: 0;
}
.features_mobile_casinos-wrapper .features-title {
  font-size: 18px;
  line-height: 1.4;
  color: var(--white);
  margin: 0 0 14px;
}
.features_mobile_casinos-wrapper .features-text,
.features_mobile_casinos-wrapper .features-text p {
  font-size: 14px;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.65);
}

/* Mobile Casinos Bonuses callout */
.colored-mobile-bonuses {
  background: rgba(173, 96, 250, 0.06);
  border-left: 3px solid #AD60FA;
  border-radius: 0 12px 12px 0;
  padding: 16px 20px;
  margin: 20px 0 0;
}
.colored-mobile-bonuses .inner-text {
  font-size: 14px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.75);
  margin: 0;
}

/* ========================================
   Best Mobile — hero image + text (top of page)
   ======================================== */
.best-mobile__image {
  float: left;
  margin: 0 24px 16px 0;
  width: 200px;
  border-radius: 14px;
  overflow: hidden;
}
.best-mobile__image img {
  width: 100%;
  height: auto;
  display: block;
}
.best-mobile__title {
  font-size: 20px;
  line-height: 1.3;
  color: var(--white);
  margin: 0 0 14px;
}
.best-mobile__text,
.best-mobile__text p {
  font-size: 15px;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.68);
}

.navbar-banner {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #161617;
}
.navbar-banner img {
  height: 40px;
  max-width: 100%;
}

/* ── Casino Bonus Cards — enhanced ── */
.top-casino__box {
  border: 1px solid rgba(255, 255, 255, 0.06);
  transition: border-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
.top-casino__box:hover {
  border-color: rgba(173, 96, 250, 0.25);
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgba(8, 16, 22, 0.4), 0 0 0 1px rgba(173, 96, 250, 0.08);
}
.top-casino__img {
  background: linear-gradient(180deg, rgba(255,255,255,0.06) 0%, rgba(255,255,255,0.02) 100%);
}
.top-casino__box > p {
  padding: 0 4px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.88);
}
.top-casino__box > p.top-casino__no-bonus {
  color: rgba(255, 255, 255, 0.45);
  font-weight: 400;
  font-style: italic;
}
.top-casino__btn {
  align-items: stretch;
}
.top-casino__btn .button {
  white-space: normal;
  line-height: 1.25;
  border-radius: 12px;
  font-weight: 600;
  letter-spacing: 0.01em;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.top-casino__btn .button:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(93, 45, 225, 0.3);
}
.top-casino__btn .button.button--border {
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: rgba(255, 255, 255, 0.8);
}
.top-casino__btn .button.button--border:hover {
  border-color: rgba(173, 96, 250, 0.4);
  box-shadow: 0 4px 12px rgba(173, 96, 250, 0.15);
}
.top-casino__review {
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.top-casino__bottom {
  padding: 8px 4px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
  margin-top: 4px;
}

/* ── Bonus page content sections ── */
.online-slots h4 {
  font-size: 18px;
  line-height: 1.4;
  font-weight: 700;
  color: #fff;
  margin: 0 0 20px;
  padding: 0;
}

/* Casino bonus types — two-column layout */
.casino-bonus-container {
  display: flex;
  gap: 24px;
  margin: 24px 0;
}
.casino-bonus-first {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0;
}
.casino-bonus-first ul {
  margin-bottom: 12px;
}
.casino-bonus-second {
  flex: 1;
}
.casino-bonus {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 20px;
  margin: 0 0 20px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;
}
.casino-bonus img.alignright {
  float: none !important;
  flex-shrink: 0;
  width: 80px !important;
  height: 80px !important;
  margin: 0 !important;
  border-radius: 12px;
  object-fit: contain;
  background: rgba(255, 255, 255, 0.04);
  padding: 8px;
  order: -1;
}
.casino-bonus p {
  margin: 0;
}

/* Bonuses comparison boxes (Varianta A / B) */
.bonuses-work-container {
  display: flex;
  gap: 16px;
  margin: 24px 0;
}
.bonuses-work-container-first,
.bonuses-work-container-second {
  flex: 1;
  padding: 24px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;
}
.bonuses-work-container-first p,
.bonuses-work-container-second p {
  margin-bottom: 8px;
}
.bonuses-work-container-first p:last-child,
.bonuses-work-container-second p:last-child {
  margin-bottom: 0;
}
.blue-text {
  font-size: 16px;
  font-weight: 700;
  background: linear-gradient(132deg, #AD60FA 0.79%, #5D2DE1 109.62%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #AD60FA;
  margin-bottom: 12px !important;
}
.sub-title {
  font-size: 16px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.85);
}

/* ── Responsive — bonus content sections ── */
@media (max-width: 767px) {
  .casino-bonus-container {
    flex-direction: column;
    gap: 16px;
  }
  .bonuses-work-container {
    flex-direction: column;
    gap: 12px;
  }
  .casino-bonus {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .casino-bonus img.alignright {
    order: -1;
  }
}

/* ---------- Header AI Button ---------- */
.header-ai-btn {
  display: inline-flex;
  align-items: center;
  margin-right: 12px;
  padding: 12px 21px 10px;
  background: transparent;
  box-shadow: none;
  border: 1px solid var(--white);
  color: var(--white);
  font-size: 14px;
  font-weight: 500;
  border-radius: 18px;
  text-decoration: none;
  transition: all 0.3s;
  white-space: nowrap;
  cursor: pointer;
}
.header-ai-btn:hover {
  background: var(--white);
  color: var(--body-bg);
  text-decoration: none;
}
/* Mobile nav AI button */
.header-ai-btn--mobile {
  justify-content: center;
  width: 100%;
  margin: 0 0 12px;
  padding: 12px 16px;
  border-radius: 16px;
  font-size: 14px;
}
/* Hide desktop AI button on mobile, show mobile version instead */
@media only screen and (max-width: 991px) {
  .header__right > .header-ai-btn {
    display: none;
  }
}
@media only screen and (max-width: 480px) {
  .header-ai-btn--mobile {
    font-size: 13px;
    padding: 10px 14px;
  }
}