/* v178 mobile full QA: responsive-only guards after v176/v177, no data/template/content changes. */

@media (max-width: 1180px) {
  html,
  body,
  body:not(.admin-private-page),
  body:not(.admin-private-page) main {
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }

  body:not(.admin-private-page) main :is(
    section,
    article,
    aside,
    div,
    header,
    footer,
    nav,
    ul,
    ol,
    li,
    dl,
    dt,
    dd,
    p,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6
  ) {
    min-width: 0 !important;
  }

  body:not(.admin-private-page) main :is(
    .home-casino-guide-content,
    .home-casino-guide-content article,
    .home-casino-guide-content .seo-article-section,
    .editorial-guide-content,
    .editorial-guide-content article,
    .new-casino-guide-content,
    .new-casino-guide-content article,
    .provider-guide-content,
    .casino-review-guide-content,
    .structured-seo-article,
    .seo-review-block,
    .license-index-guide-panel,
    .casino-catalog-copy,
    .crypto-casino-copy,
    .bonus-category-copy
  ) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main :is(
    .home-casino-guide-content,
    .editorial-guide-content,
    .new-casino-guide-content,
    .provider-guide-content,
    .casino-review-guide-content,
    .structured-seo-article,
    .directory-detail-rich-body,
    .casino-catalog-copy,
    .crypto-casino-copy,
    .bonus-category-copy
  ) :is(p, li, dd, dt, span, strong, a, h1, h2, h3, h4) {
    max-height: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-box-orient: unset !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }

  body:not(.admin-private-page) main :is(
    .catalog-load-more,
    .directory-load-more,
    .bonus-category-load-more,
    .crypto-casino-load-more
  ) {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: center !important;
    align-content: center !important;
    width: min(380px, calc(100% - 24px)) !important;
    height: auto !important;
    min-height: 96px !important;
    max-height: none !important;
    margin: 28px auto 28px !important;
    padding: 16px !important;
    gap: 12px !important;
    text-align: center !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main :is(
    .catalog-load-more,
    .directory-load-more,
    .bonus-category-load-more,
    .crypto-casino-load-more
  ) :is(button, .button, a) {
    min-width: 0 !important;
    width: min(100%, 180px) !important;
    min-height: 46px !important;
    justify-content: center !important;
    white-space: normal !important;
  }

  body:not(.admin-private-page) main .catalog-results .casino-result-list > .catalog-load-more,
  body:not(.admin-private-page) main .casino-result-list.is-grid-view .ranking-table > .catalog-load-more,
  body:not(.admin-private-page) main .crypto-casino-card-grid > .catalog-load-more.crypto-casino-load-more,
  body:not(.admin-private-page) main .bonus-category-offer-grid > .bonus-category-load-more,
  body:not(.admin-private-page) main .no-deposit-offer-grid > .catalog-load-more {
    grid-column: 1 / -1 !important;
    justify-self: center !important;
    align-self: start !important;
    margin-top: 28px !important;
    margin-bottom: 28px !important;
  }

  body:not(.admin-private-page) main :is(.button, button, summary, input, select, textarea) {
    min-height: 44px !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 760px) {
  body:not(.admin-private-page) main .casino-profile-hero.casino-profile-hero {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: calc(100vw - 24px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 18px !important;
    gap: 16px !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero.casino-profile-hero > * {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    justify-self: stretch !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .casino-identity.casino-identity {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: center !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 14px !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .casino-identity-logo-stack {
    width: min(100%, 210px) !important;
    max-width: 210px !important;
    min-width: 0 !important;
    justify-self: center !important;
    justify-items: center !important;
    gap: 10px !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .profile-logo-card.profile-logo-card {
    width: min(100%, 210px) !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 118px !important;
    max-height: none !important;
    aspect-ratio: 16 / 9 !important;
    padding: 18px !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .profile-logo-card .casino-logo-mark {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
    transform: translate(var(--logo-shift-x, 0), var(--logo-shift-y, 0)) scale(var(--logo-scale, 1)) !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .casino-profile-logo-cta,
  body:not(.admin-private-page) main .casino-profile-hero .casino-identity-logo-stack .button,
  body:not(.admin-private-page) main .casino-profile-hero .button.primary,
  body:not(.admin-private-page) main .casino-profile-hero .casino-go-button {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 210px !important;
    min-height: 46px !important;
    justify-content: center !important;
    white-space: normal !important;
    text-align: center !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .casino-profile-title-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 10px !important;
    text-align: center !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .casino-profile-title-row h1,
  body:not(.admin-private-page) main .casino-profile-hero .casino-profile-title-row :is(a, strong),
  body:not(.admin-private-page) main .casino-profile-hero p:not(.eyebrow) {
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .country-availability-badge {
    justify-self: center !important;
    width: min(100%, 280px) !important;
    max-width: 100% !important;
    min-height: 42px !important;
    height: auto !important;
    align-items: center !important;
    white-space: normal !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .country-availability-badge > span:last-child {
    min-width: 0 !important;
    width: auto !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .country-availability-flag.country-availability-flag {
    flex: 0 0 30px !important;
    width: 30px !important;
    min-width: 30px !important;
    max-width: 30px !important;
    height: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
    overflow: hidden !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .country-availability-flag .country-flag-img,
  body:not(.admin-private-page) main .casino-profile-hero .country-availability-flag .country-flag-code,
  body:not(.admin-private-page) main .casino-profile-hero .country-availability-flag .country-flag-emoji {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .hero-data-blocks.hero-data-blocks {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-height: none !important;
    gap: 12px !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .hero-data-block.hero-data-block {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    grid-template-rows: auto auto !important;
    padding: 12px !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .hero-provider-scroll.hero-provider-scroll,
  body:not(.admin-private-page) main .casino-profile-hero .hero-payment-groups.hero-payment-groups,
  body:not(.admin-private-page) main .casino-profile-hero .hero-payment-list.hero-payment-list {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .hero-provider-scroll.hero-provider-scroll {
    max-height: 260px !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .hero-payment-groups.hero-payment-groups {
    max-height: 360px !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .hero-payment-list.hero-payment-list {
    max-height: 180px !important;
  }

  body:not(.admin-private-page) main .casino-profile-hero .hero-payment-group.hero-payment-group,
  body:not(.admin-private-page) main .casino-profile-hero .hero-payment-group.crypto-subblock {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main :is(
    .casino-reference-panel,
    .casino-reference-column,
    .detail-grid,
    .detail-panel,
    .pros-cons-panel,
    .casino-recommendation-panel,
    .casino-recommendation-card,
    .casino-link-card.pros-cons-compare-card
  ) {
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: calc(100vw - 24px) !important;
    min-width: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  html body:not(.admin-private-page) main :is(
    .new-casino-card.new-casino-card,
    .featured-casino-card.featured-casino-card,
    .crypto-casino-card.crypto-casino-card,
    .bonus-category-offer-card.bonus-category-offer-card,
    .no-deposit-offer-card.no-deposit-offer-card,
    .cashback-bonus-offer-card.cashback-bonus-offer-card,
    .directory-card.provider-directory-card.provider-directory-card,
    .license-card.license-card
  ) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  html body:not(.admin-private-page) main :is(
    .no-deposit-card-top.no-deposit-card-top,
    .no-deposit-metrics.no-deposit-metrics,
    .featured-card-copy.featured-card-copy,
    .crypto-casino-card.crypto-casino-card p,
    .bonus-category-offer-card.bonus-category-offer-card p,
    .cashback-bonus-offer-card.cashback-bonus-offer-card p
  ) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main :is(
    .catalog-results,
    .casino-result-list,
    .casino-result-list .ranking-table,
    .casino-result-card,
    .casino-result-list.is-grid-view .ranking-table .table-row,
    .catalog-results .casino-result-list:not(.is-grid-view) .casino-result-card
  ) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main .catalog-results .casino-result-list:not(.is-grid-view) .casino-result-card,
  body:not(.admin-private-page) main .casino-result-list.is-grid-view .ranking-table .table-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas:
      "brand"
      "bonus"
      "strip"
      "signals"
      "score"
      "license"
      "actions" !important;
    gap: 12px !important;
    padding: 14px !important;
  }

  body:not(.admin-private-page) main .catalog-results .casino-result-list .casino-brand-cell {
    display: grid !important;
    grid-template-columns: 84px minmax(0, 1fr) !important;
    align-items: center !important;
    min-height: 0 !important;
    gap: 12px !important;
  }

  body:not(.admin-private-page) main .catalog-results .casino-result-list .casino-logo-card.compact {
    width: 82px !important;
    min-width: 82px !important;
    height: 54px !important;
    min-height: 54px !important;
  }

  body:not(.admin-private-page) main .catalog-results .casino-result-list .casino-title-line {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    min-height: 0 !important;
    gap: 7px !important;
  }

  body:not(.admin-private-page) main .catalog-results .casino-result-list .casino-title-line > :is(a, strong) {
    display: inline !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-box-orient: unset !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }

  body:not(.admin-private-page) main .catalog-bonus-summary.catalog-bonus-summary {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    overflow: visible !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    text-overflow: clip !important;
    -webkit-box-orient: unset !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }

  body:not(.admin-private-page) main .catalog-bonus-summary.catalog-bonus-summary[title] > span:first-child {
    display: none !important;
  }

  body:not(.admin-private-page) main .catalog-bonus-summary.catalog-bonus-summary[title]::before {
    content: attr(title);
    display: inline;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  body:not(.admin-private-page) main .catalog-signal-grid.catalog-signal-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    gap: 10px !important;
  }

  body:not(.admin-private-page) main .catalog-signal-grid.catalog-signal-grid > div {
    width: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main .catalog-signal-grid .mini-icon-list {
    max-height: 148px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  body:not(.admin-private-page) main .catalog-card-actions.catalog-card-actions,
  body:not(.admin-private-page) main .featured-card-actions,
  body:not(.admin-private-page) main .no-deposit-card-actions,
  body:not(.admin-private-page) main .directory-action-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    min-height: 0 !important;
    gap: 10px !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main .catalog-card-actions.catalog-card-actions :is(.button, a, button),
  body:not(.admin-private-page) main .featured-card-actions :is(.button, a, button),
  body:not(.admin-private-page) main .no-deposit-card-actions :is(.button, a, button),
  body:not(.admin-private-page) main .directory-action-row :is(.button, a, button) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 46px !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: normal !important;
  }

  body:not(.admin-private-page) main :is(
    .new-casino-card,
    .featured-casino-card,
    .crypto-casino-card,
    .bonus-category-offer-card,
    .no-deposit-offer-card,
    .cashback-bonus-offer-card,
    .directory-card.provider-directory-card,
    .license-card
  ) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main :is(
    .new-casino-card,
    .featured-casino-card,
    .crypto-casino-card,
    .bonus-category-offer-card,
    .no-deposit-offer-card,
    .cashback-bonus-offer-card,
    .directory-card.provider-directory-card,
    .license-card
  ) :is(p, small, span, strong, dd, dt) {
    max-height: none !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-box-orient: unset !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }

  body:not(.admin-private-page) main .year-filter-strip,
  body:not(.admin-private-page) main .year-filter-group,
  body:not(.admin-private-page) main .catalog-toolbar-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 8px !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main .year-filter-chip {
    flex: 1 1 calc(50% - 8px) !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

@media (max-width: 1180px) {
  html body:not(.admin-private-page) main .catalog-load-more.catalog-load-more {
    width: min(380px, calc(100% - 24px)) !important;
    height: auto !important;
    min-height: 96px !important;
    max-height: none !important;
    margin: 28px auto 28px !important;
    padding: 16px !important;
    gap: 12px !important;
    overflow: visible !important;
  }

  html body:not(.admin-private-page) main .crypto-casino-load-more.crypto-casino-load-more {
    width: min(380px, calc(100% - 24px)) !important;
    height: auto !important;
    min-height: 96px !important;
    max-height: none !important;
    margin: 28px auto 28px !important;
    padding: 16px !important;
    gap: 12px !important;
    overflow: visible !important;
  }

  html body:not(.admin-private-page) main .bonus-category-load-more.bonus-category-load-more {
    width: min(380px, calc(100% - 24px)) !important;
    height: auto !important;
    min-height: 96px !important;
    max-height: none !important;
    margin: 28px auto 28px !important;
    padding: 16px !important;
    gap: 12px !important;
    overflow: visible !important;
  }

  html body:not(.admin-private-page) main .directory-load-more.directory-load-more {
    width: min(380px, calc(100% - 24px)) !important;
    height: auto !important;
    min-height: 96px !important;
    max-height: none !important;
    margin: 28px auto 28px !important;
    padding: 16px !important;
    gap: 12px !important;
    overflow: visible !important;
  }

  html body:not(.admin-private-page) main .catalog-results .casino-result-list > .catalog-load-more.catalog-load-more,
  html body:not(.admin-private-page) main .catalog-results .ranking-table > .catalog-load-more.catalog-load-more,
  html body:not(.admin-private-page) main .casino-result-list.is-grid-view .ranking-table > .catalog-load-more.catalog-load-more,
  html body:not(.admin-private-page) main .crypto-casino-card-grid > .catalog-load-more.crypto-casino-load-more,
  html body:not(.admin-private-page) main .bonus-category-offer-grid > .bonus-category-load-more.bonus-category-load-more,
  html body:not(.admin-private-page) main .no-deposit-offer-grid > .catalog-load-more.catalog-load-more,
  html body:not(.admin-private-page) main .directory-load-more.directory-load-more {
    width: min(380px, calc(100% - 24px)) !important;
    height: auto !important;
    min-height: 96px !important;
    max-height: none !important;
    margin: 28px auto 28px !important;
    padding: 16px !important;
    gap: 12px !important;
    overflow: visible !important;
  }

  html body:not(.admin-private-page) main .catalog-bonus-summary.catalog-bonus-summary {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-box-orient: unset !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }

  html body:not(.admin-private-page) main .catalog-bonus-summary.catalog-bonus-summary[title] > span:first-child {
    display: none !important;
  }

  html body:not(.admin-private-page) main .catalog-bonus-summary.catalog-bonus-summary[title]::before {
    content: attr(title);
    display: inline;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  html body:not(.admin-private-page) main .rating-home-rating .ranking-table {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  html body:not(.admin-private-page) main .rating-home-rating .ranking-table .table-head {
    display: none !important;
  }

  html body:not(.admin-private-page) main .rating-home-rating .ranking-table .table-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    gap: 12px !important;
    overflow: visible !important;
  }

  html body:not(.admin-private-page) main .rating-home-rating .ranking-table .catalog-card-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 10px !important;
  }

  html body:not(.admin-private-page) main .rating-home-rating .ranking-table .catalog-card-actions .button {
    width: 100% !important;
    min-width: 0 !important;
    justify-content: center !important;
  }

  html[lang="ru"] body:not(.admin-private-page) main .crypto-casino-card-grid.crypto-casino-card-grid > .catalog-load-more.crypto-casino-load-more.crypto-casino-load-more,
  html body:not(.admin-private-page) main .crypto-casino-card-grid.crypto-casino-card-grid > .catalog-load-more.crypto-casino-load-more.crypto-casino-load-more {
    place-self: start center !important;
    grid-column: 1 / -1 !important;
    width: min(380px, 100%) !important;
    height: auto !important;
    min-height: 96px !important;
    max-height: none !important;
    margin: 28px auto 28px !important;
    padding: 16px !important;
    gap: 12px !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) [data-casino-load-more].bonus-category-offer-list.bonus-category-offer-list .bonus-category-offer-grid > .catalog-load-more.catalog-load-more.bonus-category-load-more.bonus-category-load-more,
  body:not(.admin-private-page) [data-casino-load-more].bonus-category-offer-list.bonus-category-offer-list .no-deposit-offer-grid > .catalog-load-more.catalog-load-more.bonus-category-load-more.bonus-category-load-more,
  html body:not(.admin-private-page) main .bonus-category-offer-grid.bonus-category-offer-grid > .catalog-load-more.catalog-load-more.bonus-category-load-more.bonus-category-load-more,
  html body:not(.admin-private-page) main .bonus-category-offer-list.bonus-category-offer-list > .catalog-load-more.catalog-load-more.bonus-category-load-more.bonus-category-load-more,
  html body:not(.admin-private-page) main .no-deposit-offer-grid.no-deposit-offer-grid > .catalog-load-more.catalog-load-more.bonus-category-load-more.bonus-category-load-more,
  html body:not(.admin-private-page) main .no-deposit-offer-list.no-deposit-offer-list > .catalog-load-more.catalog-load-more.bonus-category-load-more.bonus-category-load-more {
    place-self: start center !important;
    grid-column: 1 / -1 !important;
    width: min(380px, 100%) !important;
    height: auto !important;
    min-height: 96px !important;
    max-height: none !important;
    margin: 28px auto 28px !important;
    padding: 16px !important;
    gap: 12px !important;
    overflow: visible !important;
  }
}

@media (min-width: 761px) and (max-width: 1180px) {
  body:not(.admin-private-page) main .casino-profile-hero.casino-profile-hero,
  body:not(.admin-private-page) main .casino-profile-hero .casino-identity.casino-identity,
  body:not(.admin-private-page) main .casino-profile-hero .hero-data-blocks.hero-data-blocks {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main .catalog-results .casino-result-list:not(.is-grid-view) .casino-result-card {
    grid-template-columns: minmax(0, 1fr) minmax(150px, 0.28fr) !important;
  }

  body:not(.admin-private-page) main .catalog-results .casino-result-list:not(.is-grid-view) .catalog-bonus-summary {
    max-height: none !important;
    overflow: visible !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }
}

/* v178b: mobile QA follow-up from the full route audit. CSS-only, no content edits. */
@media (max-width: 1180px) {
  body:not(.admin-private-page) main :is(
    .rating-home-copy,
    .page-title,
    .catalog-page-title,
    .directory-title,
    .news-index-title,
    .crypto-casino-hero-copy,
    .no-deposit-hero-copy,
    .deposit-bonus-hero-copy,
    .reload-bonus-hero-copy,
    .cashback-bonus-hero-copy,
    .bonus-category-hero-copy,
    .mobile-casino-hero-copy,
    .new-casino-hero-copy,
    .best-casino-hero-copy,
    .featured-casino-hero-copy,
    .provider-directory-hero-copy
  ) p {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-box-orient: unset !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }

  body:not(.admin-private-page) main :is(
    .smart-picker-tags,
    .directory-linked-list,
    .catalog-signal-grid .mini-icon-list,
    .hero-provider-scroll,
    .hero-payment-list
  ) :is(a, span, small) {
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 30px !important;
    max-height: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }

  body:not(.admin-private-page) main .directory-link-chip.directory-link-chip,
  body:not(.admin-private-page) main .provider-chip.brand-visual-token,
  body:not(.admin-private-page) main .provider-chip.brand-visual-token.is-unlinked,
  body:not(.admin-private-page) main .mini-token.brand-visual-token,
  body:not(.admin-private-page) main .mini-token.provider-mini-token.brand-visual-token,
  body:not(.admin-private-page) main .mini-token.currency-token.brand-visual-token {
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 34px !important;
    max-height: none !important;
    padding: 7px 10px !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    line-height: 1.25 !important;
  }

  body:not(.admin-private-page) main .catalog-results .casino-result-main.casino-result-main {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 12px !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main .catalog-results .catalog-signal-grid.catalog-signal-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body:not(.admin-private-page) main .catalog-results .catalog-signal-grid.catalog-signal-grid > div {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body:not(.admin-private-page) main .catalog-results .catalog-signal-grid .mini-icon-list.inline-icons {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    gap: 8px !important;
  }

  body:not(.admin-private-page) main .catalog-bonus-summary.catalog-bonus-summary {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-box-orient: unset !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }

  body:not(.admin-private-page) main .catalog-bonus-summary.catalog-bonus-summary[title] > span:first-child {
    display: none !important;
  }

  body:not(.admin-private-page) main .catalog-bonus-summary.catalog-bonus-summary[title]::before {
    content: attr(title);
    display: inline !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  body:not(.admin-private-page) main :is(
    .casino-reference-panel,
    .casino-reference-column,
    .casino-reference-column.casino-reference-contact,
    .casino-reference-list,
    .casino-reference-row,
    .pros-cons-compare,
    .casino-link-card.pros-cons-compare-card
  ) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  body:not(.admin-private-page) main :is(
    .casino-reference-column,
    .casino-reference-column.casino-reference-contact,
    .casino-link-card.pros-cons-compare-card
  ) * {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    text-overflow: clip !important;
  }

  body:not(.admin-private-page) main .casino-link-card.pros-cons-compare-card.pros-cons-compare-card {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-content: center !important;
    gap: 8px !important;
    padding: 14px !important;
  }
}

@media (max-width: 760px) {
  body:not(.admin-private-page) main .no-deposit-card-top.no-deposit-card-top {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    text-align: center !important;
    justify-items: center !important;
  }

  body:not(.admin-private-page) main .no-deposit-card-top.no-deposit-card-top h3 {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-box-orient: unset !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }

  body:not(.admin-private-page) main .smart-picker-tags.smart-picker-tags {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 8px !important;
    width: 100% !important;
  }

  body:not(.admin-private-page) main .smart-picker-tags.smart-picker-tags span {
    display: block !important;
    width: 100% !important;
  }
}

/* v178b specificity guard against older mobile hotfixes. */
@media (max-width: 1180px) {
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main section.rating-home-hero.rating-home-hero.rating-home-hero .rating-home-copy.rating-home-copy.rating-home-copy p,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main section.page-title.page-title.page-title p,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main section.catalog-page-title.catalog-page-title.catalog-page-title p,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main section.directory-title.directory-title.directory-title p,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main section.news-index-title.news-index-title.news-index-title p,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main section[class*="-hero"][class*="-hero"][class*="-hero"] [class*="-hero-copy"][class*="-hero-copy"][class*="-hero-copy"] p {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-box-orient: unset !important;
    -webkit-line-clamp: none !important;
    line-clamp: none !important;
  }

  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .catalog-results.catalog-results .casino-result-main.casino-result-main.casino-result-main,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .catalog-results.catalog-results .catalog-signal-grid.catalog-signal-grid.catalog-signal-grid,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .catalog-results.catalog-results .catalog-signal-grid.catalog-signal-grid.catalog-signal-grid > div,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .catalog-results.catalog-results .catalog-signal-grid.catalog-signal-grid.catalog-signal-grid .mini-icon-list.inline-icons {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    gap: 8px !important;
  }

  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .catalog-results.catalog-results .casino-result-main.casino-result-main.casino-result-main,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .catalog-results.catalog-results .catalog-signal-grid.catalog-signal-grid.catalog-signal-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .catalog-bonus-summary.catalog-bonus-summary.catalog-bonus-summary {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-box-orient: unset !important;
    -webkit-line-clamp: none !important;
    line-clamp: none !important;
  }

  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .smart-picker-result-card.smart-picker-result-card,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .smart-picker-tags.smart-picker-tags,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .smart-picker-tags.smart-picker-tags span,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .featured-casino-hero-panel.featured-casino-hero-panel,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .crypto-casino-hero-panel.crypto-casino-hero-panel,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .pros-cons-panel.pros-cons-panel,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .no-deposit-card-top.no-deposit-card-top,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .no-deposit-metrics.no-deposit-metrics,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .no-deposit-metrics.no-deposit-metrics dd,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .no-deposit-metrics.no-deposit-metrics .has-copy-code,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .bonus-category-offer-card.bonus-category-offer-card,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .bonus-category-offer-card.bonus-category-offer-card strong,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .bonus-category-offer-card.bonus-category-offer-card span,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .no-deposit-offer-card.no-deposit-offer-card strong,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .no-deposit-offer-card.no-deposit-offer-card span,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .cashback-bonus-offer-card.cashback-bonus-offer-card strong,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .cashback-bonus-offer-card.cashback-bonus-offer-card span,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .casino-link-card.pros-cons-compare-card.pros-cons-compare-card,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .casino-reference-column.casino-reference-column,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .casino-reference-column.casino-reference-contact {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-line-clamp: none !important;
    line-clamp: none !important;
  }

  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .news-index-card.news-index-card .news-index-copy.news-index-copy p {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 180px !important;
    overflow-x: visible !important;
    overflow-y: auto !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-box-orient: unset !important;
    -webkit-line-clamp: none !important;
    line-clamp: none !important;
  }

  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .recommendation-pin.recommendation-pin {
    position: relative !important;
    inset: auto !important;
    right: auto !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    justify-self: end !important;
    margin-inline-start: auto !important;
    width: 36px !important;
    min-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
  }

  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .recommendation-pin-wrap.recommendation-pin-wrap {
    width: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    overflow: visible !important;
  }

  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .catalog-filter-toggle.catalog-filter-toggle span,
  html[lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .catalog-filter-option.catalog-filter-option span {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
}

/* v178b final high-specificity card guards. */
@media (max-width: 1180px) {
  html[lang][lang][lang] body:not(.admin-private-page):not(.admin-private-page) main section.featured-casino-hero.featured-casino-hero.featured-casino-hero aside.featured-casino-hero-panel.featured-casino-hero-panel.featured-casino-hero-panel,
  html[lang][lang][lang] body:not(.admin-private-page):not(.admin-private-page) main section.mobile-casino-hero.mobile-casino-hero.mobile-casino-hero aside.featured-casino-hero-panel.featured-casino-hero-panel.featured-casino-hero-panel,
  html[lang][lang][lang] body:not(.admin-private-page):not(.admin-private-page) main section.crypto-casino-hero.crypto-casino-hero.crypto-casino-hero aside.crypto-casino-hero-panel.crypto-casino-hero-panel.crypto-casino-hero-panel {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
  }

  html[lang][lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .no-deposit-bonus-box.no-deposit-bonus-box.no-deposit-bonus-box,
  html[lang][lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .no-deposit-bonus-box.no-deposit-bonus-box.no-deposit-bonus-box h3,
  html[lang][lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .bonus-category-offer-card.bonus-category-offer-card.bonus-category-offer-card p,
  html[lang][lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .bonus-category-offer-card.bonus-category-offer-card.bonus-category-offer-card strong,
  html[lang][lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .bonus-category-offer-card.bonus-category-offer-card.bonus-category-offer-card span,
  html[lang][lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .no-deposit-offer-card.no-deposit-offer-card.no-deposit-offer-card p,
  html[lang][lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .no-deposit-offer-card.no-deposit-offer-card.no-deposit-offer-card h3,
  html[lang][lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .no-deposit-offer-card.no-deposit-offer-card.no-deposit-offer-card strong,
  html[lang][lang][lang] body:not(.admin-private-page):not(.admin-private-page) main .no-deposit-offer-card.no-deposit-offer-card.no-deposit-offer-card span {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-box-orient: unset !important;
    -webkit-line-clamp: none !important;
    line-clamp: none !important;
  }

  html[lang][lang][lang] body:not(.admin-private-page):not(.admin-private-page) main :is(
    .smart-picker-result-card,
    .crypto-casino-card,
    .featured-casino-card,
    .news-index-card,
    .catalog-filter-summary,
    .catalog-filter-chip,
    .filter-summary-chip
  ) :is(p, h2, h3, a, strong, span) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-box-orient: unset !important;
    -webkit-line-clamp: none !important;
    line-clamp: none !important;
  }
}

