/* Champion Centre v1.11.107 — consistent mobile gutters on Federations and News pages. */
@media (max-width: 900px) {
  /* Keep page content away from the physical screen edge. */
  body .federations-page .federation-directory,
  body .news-page-main .news-page-section {
    width: 100% !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
  }

  /* Federation directory: every visible child follows the same gutter. */
  body .federations-page .federation-directory__intro,
  body .federations-page .federation-directory__toolbar,
  body .federations-page .federation-list,
  body .federations-page .federation-kpis {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body .federations-page .federation-directory__intro > div,
  body .federations-page .federation-directory__intro p,
  body .federations-page .federation-directory__toolbar,
  body .federations-page .federation-card {
    min-width: 0 !important;
  }

  /* News list: heading, cards and pagination share one visual left edge. */
  body .news-page-main .news-list-heading,
  body .news-page-main .news-grid-all,
  body .news-page-main .champion-pagination,
  body .news-page-main .empty-state {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Prevent the red title marker from touching the viewport edge. */
  body .federations-page .federation-directory .section-title,
  body .news-page-main .news-page-section .section-title {
    padding-left: 18px !important;
    margin-left: 0 !important;
  }

  body .federations-page .federation-directory .section-title::before,
  body .news-page-main .news-page-section .section-title::before {
    left: 0 !important;
  }
}

@media (max-width: 374px) {
  body .federations-page .federation-directory,
  body .news-page-main .news-page-section {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}
