@media (max-width: 1399px) {
  .genre-rail {
    position: static;
    flex-direction: row;
    gap: 10px;
    padding: 14px 16px 0;
    overflow-x: auto;
  }

  .genre-rail__item {
    width: auto;
    min-width: 96px;
    min-height: 56px;
    flex-direction: row;
    gap: 8px;
    padding: 10px 14px;
  }

  .genre-rail__text {
    position: static;
    transform: none;
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    font-size: 13px;
    font-weight: 600;
  }
}

@media (max-width: 1199px) {
  .news-grid,
  .games-grid,
  .game-info-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hero-grid,
  .article-hero__inner,
  .game-hero__inner,
  .article-layout,
  .game-rich-layout,
  .catalog-filter-grid { grid-template-columns: 1fr; }
  .header-search-live--desktop { flex-basis: 300px; max-width: 300px; }
}

@media (max-width: 991px) {
  .desktop-nav,
  .header-search-live--desktop,
  .header-favorites-btn,
  .header-profile-wrap { display: none; }
  .burger-btn { display: inline-flex; }
  .hero-card { min-height: 480px; }
  .hero-card__title { font-size: 34px; }
  .article-hero__content h1,
  .game-hero__content h1,
  .section-head h1,
  .section-head h2,
  .catalog-hero h1 { font-size: 22px; }
  .catalog-hero { flex-direction: column; align-items: flex-start; }
  .game-showcase { min-height: 64vh; }
  .game-showcase__lead { font-size: 18px; }
}

@media (max-width: 767px) {
  .container { width: min(100% - 24px, 1320px); }
  .header-inner { min-height: 74px; }
  .site-logo { font-size: 24px; }
  .site-brand__mark { width: 34px; height: 34px; border-radius: 10px; }
  .mobile-menu__brand-mark { width: 34px; height: 34px; }
  .hero-section { padding-top: 18px; }
  .hero-card { min-height: 420px; border-radius: 24px; }
  .hero-card__content { left: 16px; right: 16px; bottom: 16px; padding: 18px; border-radius: 18px; }
  .hero-card__title { font-size: 28px; }
  .news-grid,
  .games-grid,
  .game-info-grid { grid-template-columns: 1fr; }
  .news-card__image { height: 220px; }
  .game-card__cover { height: 300px; }
  .side-news-card { grid-template-columns: 110px minmax(0,1fr); border-radius: 18px; }
  .side-news-card__content h3 { font-size: 16px; }
  .footer-shell { grid-template-columns: 1fr; gap: 24px; }
  .footer-nav-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-bottom-bar { flex-direction: column; align-items: flex-start; }
  .authors-grid-page,
  .info-page-grid { grid-template-columns: 1fr; }
  .genre-rail { padding: 12px; gap: 8px; }
  .genre-rail__item { min-width: max-content; border-radius: 16px; }
  .catalog-filter-card { padding: 16px; border-radius: 22px; }
  .catalog-filter-actions { flex-direction: column; align-items: stretch; }
  .catalog-filter-submit,
  .catalog-filter-reset { width: 100%; }
  .game-showcase__inner { padding-top: 80px; padding-bottom: 56px; }
  .game-showcase__eyebrow { font-size: 12px; }
  .game-showcase__content h1 { font-size: 36px; }
  .game-showcase__release { font-size: 18px; }
  .game-showcase__lead { font-size: 16px; }
  .game-showcase__actions { flex-direction: column; }
}

@media (max-width: 1199px) {
  .header-favorites-btn span { display: none; }
}


@media (max-width: 991px) {
  .author-hero-card { grid-template-columns: 1fr; }
  .author-hero-card__media .author-chip { width: auto; }
  .article-hero__content p, .game-hero__content p { font-size: small; }
}

@media (max-width: 767px) {
  .news-card__author-row { flex-direction: column; align-items: flex-start; }
  .author-hero-card { padding: 20px; border-radius: 24px; }
  .author-hero-card__stats { grid-template-columns: 1fr; }
}

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

@media (max-width: 740px) {
  .reviews-grid { grid-template-columns: 1fr; }
  .review-card__image { height: 220px; }
  .review-gallery { grid-template-columns: 1fr; }
  .review-media-block h2 { font-size: 24px; }
  .review-lightbox { padding: 12px; }
  .review-lightbox__dialog { grid-template-columns: 56px minmax(0,1fr) 56px; gap: 8px; align-items:center; }
  .review-lightbox__figure { padding: 12px; border-radius: 22px; }
  .review-lightbox__figure img { max-height: 62vh; }
  .review-lightbox__nav { position:relative; z-index: 2; width: 44px; height: 44px; font-size: 28px; align-self:center; }
  .review-lightbox__nav--prev { left: 0; }
  .review-lightbox__nav--next { right: 0; }
  .review-lightbox__caption { flex-direction: column; align-items:flex-start; gap: 10px; padding-right: 56px; }
  .review-lightbox__close { width: 44px; height: 44px; font-size: 30px; }
}


@media (max-width: 991px) {
  .game-screenshots { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
  .game-screenshots { grid-template-columns: 1fr; }
  .game-screenshots__item img { height: 200px; }
}


@media (max-width: 991px) {
  .cookie-consent__panel {
    grid-template-columns: 1fr;
  }

  .cookie-consent__visual {
    order: -1;
  }

  .cookie-consent__media {
    min-height: 220px;
  }
}

@media (max-width: 767px) {
  .cookie-consent {
    padding: 14px;
    align-items: flex-end;
  }
  
  .article-hero__content {
    inset: 50% auto auto 0%;
  }
  
  .article-meta--stacked {
    flex-wrap: wrap;
  }

  .cookie-consent__panel {
    gap: 18px;
    padding: 18px;
    border-radius: 24px;
  }

  .cookie-consent__content h2 {
    font-size: 26px;
  }

  .widget-card__game-link {
    grid-template-columns: 68px minmax(0, 1fr);
    gap: 12px;
  }

  .widget-card__game-thumb {
    width: 68px;
    height: 68px;
  }

  .widget-card__game-copy strong {
    font-size: 16px;
  }

  .cookie-switch {
    flex-direction: column;
    align-items: flex-start;
    padding: 16px;
  }

  .cookie-switch__control {
    align-self: flex-end;
  }

  .cookie-consent__actions {
    flex-direction: column;
  }

  .cookie-consent__btn {
    width: 100%;
  }

  .cookie-consent__media {
    min-height: 180px;
  }
}

@media (max-width: 1199px) {
  .listing-toolbar {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .listing-toolbar__filters {
    justify-content: flex-start;
  }

  .listing-tabs {
    justify-content: flex-start;
  }
}

@media (max-width: 767px) {
  .listing-toolbar__search {
    flex-direction: column;
    align-items: stretch;
  }

  .listing-toolbar__search-btn,
  .listing-toolbar__sort-btn {
    width: 100%;
  }

  .listing-toolbar__filters {
    flex-direction: column;
    align-items: stretch;
  }

  .listing-tabs {
    width: 100%;
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 2px;
  }

  .listing-tabs__item {
    flex: 0 0 auto;
  }

  .listing-toolbar__sort label {
    width: 100%;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding: 12px 14px;
  }

  .listing-toolbar__sort select {
    min-width: 0;
    width: 100%;
  }
}


@media (max-width: 767px) {
  .footer-nav-grid { grid-template-columns: 1fr; }
  .footer-genre-list { grid-template-columns: 1fr; }
  .footer-brand-link__title { font-size: 22px; }
  .footer-branding__lead { max-width: none; }
  .author-directory-card,
  .info-page-card { padding: 20px; border-radius: 22px; }
}

@media (max-width: 1199px) {
  .advertising-stats-grid,
  .advertising-mockups,
  .advertising-process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
  .advertising-stats-grid,
  .advertising-mockups,
  .advertising-process-grid { grid-template-columns: 1fr; }
  .advertising-stat-card__value { font-size: 34px; }
}


@media (max-width: 767px) {
  .error-hero {
    min-height: auto;
    padding: 28px 0 56px;
  }

  .error-card {
    padding: 22px;
    border-radius: 26px;
  }

  .error-card::before {
    border-radius: 23px;
  }

  .error-card__media {
    width: min(100%, 190px);
    border-radius: 22px;
    padding: 14px;
  }

  .error-card__content h1 {
    font-size: 34px;
  }

  .error-card__content p {
    font-size: 15px;
  }

  .error-card__actions {
    flex-direction: column;
  }

  .error-card__btn {
    width: 100%;
  }
}

/* === Streams page responsive: start === */
@media (max-width: 1180px) {
  .streams-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .streams-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .stream-card h3 {
    font-size: 18px;
  }

  .stream-card__hover-hint {
    display: none;
  }
}
/* === Streams page responsive: end === */

@media (max-width: 991px) {
  .search-results-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .search-panel__form { align-items: stretch; }
}

@media (max-width: 767px) {
  .header-search-live__submit { padding: 0 13px; }
  .search-panel { padding: 16px; border-radius: 22px; }
  .search-panel__form { flex-direction: column; }
  .search-panel__submit { width: 100%; }
  .search-results-grid { grid-template-columns: 1fr; }
  .search-result-card__media img { height: 220px; }
}

/* === Responsive search fixes: keep submit buttons inside fields === */
@media (max-width: 767px) {
  .header-search-live__input {
    padding-right: 96px;
  }
  .header-search-live__submit {
    top: 6px;
    right: 6px;
    width: auto;
    height: 40px;
    min-height: 0;
    padding: 0 13px;
  }
  .search-panel__form {
    display: block;
  }
  .search-panel__input {
    min-height: 56px;
    padding-right: 108px;
  }
  .search-panel__input .search-panel__submit {
    position: absolute;
    top: 50%;
    right: 6px;
    width: auto;
    height: 42px;
    min-height: 42px;
    padding: 0 16px;
    transform: translateY(-50%);
  }
  .search-panel__input .search-panel__submit:hover {
    transform: translateY(calc(-50% - 1px));
  }
}

/* === Responsive search fixes: end === */
@media (max-width: 767px) {
  body.cookie-consent-open {
    overflow: auto;
  }

  .cookie-consent {
    align-items: flex-start;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding: 14px;
  }

  .cookie-consent__panel {
    max-height: calc(100vh - 28px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
}