/* Site-wide mobile overflow fixes (trade_wins_consulting_com static) */
html {
  overflow-x: clip;
}

body {
  max-width: 100%;
  overflow-x: clip;
}

main,
section,
.container,
.price-books-page,
.price-books-content {
  box-sizing: border-box;
  max-width: 100%;
}

img,
video,
iframe,
svg {
  height: auto;
  max-width: 100%;
}

@media (max-width: 768px) {
  .container {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  /* Nuxt grids with large minmax() — scoped rules often beat generic .books-grid */
  .books-grid,
  .sec-books-section .books-grid,
  .header-products-grid,
  .products-grid,
  .videos-grid,
  .includes-grid,
  .resources-grid,
  .sec-resources .resources-grid,
  .feature-grid,
  .sec-features .features-grid,
  .quick-access,
  .sec-resources .quick-access,
  .summary-cards,
  .stats-cards,
  .upcoming-grid,
  .sec-tickets .tickets-grid,
  .tips-grid,
  .metrics-grid,
  .summary-grid,
  .psi-grid,
  .psi-meta-row,
  .psi-columns,
  .psi-shots-inline,
  .sec-website .charts,
  .speaker-grid,
  .speaker-grid-landscape,
  .speaker-grid-portrait,
  .event-images,
  .hero-grid,
  .sec-hero .hero-grid,
  .hero-layout,
  .service-row,
  .sec-services .service-row,
  .product-row,
  .sec-products .product-row,
  .bundle-actions,
  .sec-bundle-section .bundle-actions,
  .form-grid,
  .sec-page-section .form-grid,
  .cards,
  .sec-dashboard-section .cards,
  .gsc-cards,
  .device-cards,
  .return-layout,
  .speaker-profile,
  .checkout-layout,
  .sec-checkout-layout .checkout-layout {
    grid-template-columns: 1fr !important;
  }

  .book-card,
  .sec-books-section .book-card {
    box-sizing: border-box;
    min-width: 0;
    padding: 1.25rem;
    width: 100%;
  }

  .book-header,
  .sec-books-section .book-header {
    align-items: flex-start;
    flex-direction: column;
  }

  .book-info,
  .sec-books-section .book-info {
    min-width: 0;
    width: 100%;
  }

  .book-meta,
  .sec-books-section .book-meta {
    flex-wrap: wrap;
  }

  .book-actions,
  .sec-books-section .book-actions {
    flex-direction: column;
    width: 100%;
  }

  .bundle-section,
  .sec-bundle-section.bundle-section {
    overflow: hidden;
  }

  .bundle-card,
  .sec-bundle-section .bundle-card {
    box-sizing: border-box;
    overflow: hidden;
    padding: 1.25rem 1rem;
  }

  .bundle-price,
  .sec-bundle-section .bundle-price {
    align-items: center;
    margin-bottom: 1rem;
    position: static;
  }

  .bundle-title,
  .bundle-description,
  .sec-bundle-section .bundle-title,
  .sec-bundle-section .bundle-description {
    padding-right: 0;
  }

  .bundle-actions .bundle-btn,
  .bundle-actions .more-info-btn,
  .sec-bundle-section .bundle-actions .bundle-btn,
  .sec-bundle-section .bundle-card .more-info-btn {
    height: auto;
    min-height: 48px;
    white-space: normal;
  }

  .support-content,
  .sec-support-section .support-content {
    padding: 1.5rem 1rem;
  }

  .speaker-thumb,
  .speaker-thumb-landscape,
  .speaker-thumb-portrait {
    height: auto;
    max-width: 100%;
    width: 100%;
  }

  .speaker-profile {
    padding: 2rem 1rem;
  }

  .table-wrap {
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
    overflow-x: auto;
  }

  .users-table {
    min-width: 0;
  }

  .score-rings {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .pricing-row,
  .row.pricing-row {
    flex-wrap: wrap;
    margin-left: 0;
    margin-right: 0;
  }

  .pricing-card {
    max-width: 100% !important;
    width: 100% !important;
  }
}

@media (max-width: 480px) {
  .container {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }

  .sec-past-events .event-images,
  .event-images {
    grid-template-columns: 1fr !important;
  }
}
