/* Source: /v438-mobile-final.css */
/* v438 FINAL MOBILE STABILITY LAYER
   Loaded last. Prevents legacy/specialized CSS from reintroducing
   horizontal page overflow or clipped system/evidence visuals. */
@media (max-width:900px){
  html,body{max-width:100%!important;overflow-x:clip!important}
  body{width:100%!important}
  #nav{max-width:100%!important;overflow:visible!important}
  #nav .mobile-primary-nav.v436-mobile-primary{
    display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
    width:100%!important;max-width:100%!important;overflow:visible!important;
    touch-action:pan-y!important;overscroll-behavior-x:none!important
  }
  #nav .mobile-primary-nav.v436-mobile-primary .mobile-primary-link{
    min-width:0!important;width:auto!important;max-width:100%!important;
    white-space:normal!important;overflow:hidden!important;text-overflow:ellipsis!important;
    overflow-wrap:normal!important;word-break:normal!important;touch-action:manipulation!important
  }
  #hamburger{position:relative!important;z-index:1005!important;pointer-events:auto!important;touch-action:manipulation!important}
  #mobile-menu.v436-mobile-menu{max-width:100vw!important;overflow-x:hidden!important;overflow-y:auto!important;touch-action:pan-y!important}

  /* Generic visual containment without hiding content */
  main,main section,main article,main div,main figure{min-width:0}
  main img,main svg,main video,main canvas{max-width:100%!important;height:auto!important}
  .iq-main-visual,.iq431-premium-evidence,.v396-visual,.v420-sector-explainer,.eri351,.iqcat,.iqcat-shell{
    max-width:100%!important;min-width:0!important;overflow-x:visible!important
  }
  .iq-main-visual img,.iq431-premium-evidence img,.v396-visual img{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;object-fit:contain!important}
  table{max-width:100%!important}
  pre{max-width:100%!important;overflow-x:auto!important;white-space:pre-wrap!important;overflow-wrap:anywhere!important}
  code{overflow-wrap:anywhere!important;word-break:break-word!important}

  /* Evidence registry: keep every record inside the viewport */
  .reg-hero{padding-left:18px!important;padding-right:18px!important;max-width:100%!important;overflow:hidden!important}
  .reg-body{width:100%!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;overflow:visible!important}
  .reg-card{width:100%!important;max-width:100%!important;min-width:0!important;padding:22px 18px!important;overflow:hidden!important}
  .reg-card-top,.reg-badges,.reg-actions{min-width:0!important;max-width:100%!important}
  .reg-card-id,.reg-card-title,.reg-meta-val,.reg-arch-line,.reg-result-box,.reg-claim-boundary{
    max-width:100%!important;min-width:0!important;overflow-wrap:anywhere!important;word-break:break-word!important;white-space:normal!important
  }
  .reg-meta{grid-template-columns:minmax(0,1fr)!important;width:100%!important}
  .reg-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;width:100%!important}
  .reg-actions a{width:100%!important;max-width:100%!important;min-width:0!important;white-space:normal!important;text-align:center!important;justify-content:center!important;overflow-wrap:anywhere!important}
  .reg-result-box,.reg-arch-line{padding-left:12px!important;padding-right:12px!important}
  .reg-future{max-width:100%!important;padding-left:18px!important;padding-right:18px!important}

  /* Serverless process chain: full sequence visible, no horizontal swipe required */
  .iqcat-chain{
    display:flex!important;flex-direction:column!important;align-items:stretch!important;
    gap:0!important;width:100%!important;max-width:100%!important;
    overflow:visible!important;margin-left:0!important;margin-right:0!important;padding:8px 0 18px!important
  }
  .iqcat-chain-item{flex:0 0 auto!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:15px 14px!important}
  .iqcat-arrow{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:24px!important;transform:rotate(90deg)!important;transform-origin:center!important;font-size:1.05rem!important}
  .iqcat-grid,.iqcat-grid.two,.iqcat-grid.four,.iqcat-steps,.iqcat-contrast,.iqcat-evidence,.iqcat-boundaries{min-width:0!important;max-width:100%!important}
  .iqcat-card,.iqcat-step,.iqcat-doctrine{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important}

  /* Inline grid sections used across Serverless: collapse before they can clip */
  [data-tom-v400="1"]>div,[data-sra-v397="1"]>div{max-width:100%!important;min-width:0!important}
}
@media (max-width:520px){
  #nav .mobile-primary-nav.v436-mobile-primary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #nav .mobile-primary-nav.v436-mobile-primary .mobile-primary-link{min-height:44px!important;font-size:.68rem!important;padding:7px 6px!important}
  .reg-hero{padding-top:112px!important;padding-bottom:34px!important}
  .reg-body{padding-top:32px!important;padding-bottom:64px!important}
  .reg-card{padding:20px 15px!important}
  .iqcat-chain-item{padding:14px 12px!important}
}

