@media (max-width: 1100px) {
  .site-header__inner { grid-template-columns: 180px 1fr auto; gap: .9rem; }
  .primary-navigation__list { gap: .65rem; }
  .primary-navigation a { font-size: .75rem; }
  .footer-grid { grid-template-columns: 1.4fr repeat(3, 1fr); gap: 1.5rem; }
  .home-route-grid { grid-template-columns: repeat(3, 1fr); }
  .route-card--sports, .route-card--rules { grid-column: span 2; }
  .step-flow { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 900px) {
  :root { --header-height: 70px; }
  .information-bar nav { display: none; }
  .site-header__inner { grid-template-columns: 1fr auto; min-height: var(--header-height); }
  .menu-toggle { display: inline-flex; grid-column: 2; grid-row: 1; align-items: center; justify-content: center; gap: .5rem; cursor: pointer; }
  .header-action { display: none; }
  .primary-navigation { position: fixed; top: calc(38px + var(--header-height)); right: 0; bottom: 0; left: 0; display: none; padding: 1.2rem 18px 3rem; overflow-y: auto; background: #061c1e; }
  .primary-navigation.is-open { display: block; }
  .primary-navigation__list { display: grid; align-items: stretch; justify-content: stretch; gap: 0; }
  .primary-navigation a { min-height: 52px; border-bottom: 1px solid var(--border-dark); font-size: 1rem; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-intro { grid-column: 1 / -1; }
  .footer-legal { grid-template-columns: 1fr; gap: 1rem; }
  .home-hero__grid, .mobile-opening, .support-opening, .legal-opening, .incident-panel, .split-layout { grid-template-columns: 1fr; }
  .home-hero__visual { min-height: 420px; }
  .home-hero__image { min-height: 420px; }
  .home-route-grid { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
  .route-card, .route-card--sports, .route-card--mobile, .route-card--rules { grid-column: auto; grid-row: auto; min-height: 210px; }
  .method-paper { grid-template-columns: 1fr; }
  .method-meta { border-top: 1px solid #dcd8cb; border-left: 0; padding-top: 1rem; padding-left: 0; }
  .platform-map, .legal-mini-timeline { grid-template-columns: 1fr 1fr; }
  .sports-preview, .casino-preview, .event-view-grid, .cricket-section { grid-template-columns: 1fr; }
  .term-stagger > div:nth-child(2), .term-stagger > div:nth-child(4), .sport-feature:nth-child(2) { transform: none; margin-top: 0; }
  .platform-layout { grid-template-columns: 1fr; }
  .platform-toc { position: static; }
  .football-tennis, .category-rail { grid-template-columns: 1fr; }
  .category-side { position: static; display: flex; gap: 1rem; overflow-x: auto; }
  .category-side a { flex: 0 0 auto; }
  .risk-matrix { grid-template-columns: 130px repeat(3, minmax(170px, 1fr)); overflow-x: auto; }
  .route-details article { grid-template-columns: 130px repeat(3, minmax(190px, 1fr)); overflow-x: auto; }
  .faq-tools { top: var(--header-height); }
  .brand-snapshot, .mobile-preview-layout, .legal-preview-layout, .platform-observation, .device-evidence, .basketball-structure, .esports-structure, .legal-implementation-records { grid-template-columns: 1fr; }
  .brand-snapshot .section-intro { position: static; }
  .snapshot-links { grid-column: 1; }
  .casino-format-icons { grid-template-columns: repeat(3, 1fr); }
  .term-ledger, .bonus-term-map { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 680px) {
  body { font-size: 16px; }
  .site-width { width: min(calc(100% - 36px), var(--content-width)); }
  .information-bar__long { display: none; }
  .information-bar__short { display: inline; }
  .wordmark__note { display: none; }
  .page-heading { padding: 2.5rem 0 2rem; }
  .page-heading h1 { font-size: clamp(2.25rem, 12vw, 3.7rem); }
  .home-hero { padding-top: 3rem; }
  .home-hero h1 { font-size: clamp(2.4rem, 11vw, 3.4rem); }
  .home-hero__visual, .home-hero__image { min-height: 350px; }
  .status-board { grid-template-columns: 1fr; bottom: 2.2rem; }
  .status-board span { grid-template-columns: 120px 1fr; }
  .home-route-grid, .method-list, .platform-map, .sports-preview, .term-stagger, .mobile-comparison, .legal-mini-timeline, .object-comparison, .verification-chain, .incident-steps, .disclosure-grid, .route-tree, .escalation-path, .minor-sports, .three-column-list, .related-grid, .snapshot-grid, .casino-format-icons, .term-ledger, .payment-ledger, .bonus-term-map, .contact-route-grid, .support-accordion__item > div, .brand-observation dl { grid-template-columns: 1fr; }
  .snapshot-grid > div:first-child, .snapshot-grid > div:last-child, .support-accordion__item > div p:last-child { grid-column: auto; }
  .kabaddi-structure { grid-template-columns: 1fr; }
  .kabaddi-structure ol { display: grid; grid-template-columns: 1fr; gap: .4rem; }
  .kabaddi-structure li:not(:last-child)::after { content: "↓"; right: 50%; bottom: -.85rem; }
  .casino-live-reference { grid-template-columns: 1fr !important; }
  .check-sequence { grid-template-columns: 1fr 1fr; }
  .payment-ledger article:nth-child(3n+2) { transform: none; }
  .route-card { min-height: 180px; }
  .casino-preview .editorial-image, .casino-preview .editorial-image img { min-height: 360px; }
  .step-flow { grid-template-columns: 1fr; }
  .casino-mosaic { grid-template-columns: 1fr 1fr; grid-template-rows: 300px auto auto; }
  .casino-mosaic .editorial-image { grid-column: 1 / -1; grid-row: auto; }
  .category-sections section { grid-template-columns: 1fr; gap: .8rem; }
  .claim-pairs { grid-template-columns: 1fr; }
  .evidence-checklist { columns: 1; }
  .metric-grid { grid-template-columns: 1fr 1fr; }
  .page-dates { display: grid; }
  .button-row { display: grid; }
  .button { width: 100%; }
  .document-sheet { margin-top: 0; padding: 1.35rem; }
  .table-scroll::before { content: "Swipe horizontally to compare"; display: block; padding: .55rem .8rem; background: #fff7df; color: #604a20; font-size: .72rem; }
  .faq-tools { position: static; }
  .floating-brand-cta { bottom: calc(12px + env(safe-area-inset-bottom)); width: calc(100% - 24px); min-width: 0; min-height: 56px; }
  .back-to-top { right: 12px; bottom: 12px; }
  .has-floating-brand-cta .back-to-top { bottom: calc(80px + env(safe-area-inset-bottom)); }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
