/* Final Version 46 mobile overrides. Loaded after every historical style layer. */
@media (max-width:1050px){
  html,body{width:100%!important;max-width:100%!important;min-height:100%!important;overflow-x:clip!important;-webkit-text-size-adjust:100%!important;text-size-adjust:100%!important}
  body{margin:0!important;overscroll-behavior-x:none!important}
  body.accessOpen{overflow:hidden!important}
  .accessPortal{position:fixed!important;inset:0!important;display:flex!important;width:100%!important;height:100dvh!important;min-height:100svh!important;flex-direction:column!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}
  .accessPanel{order:1!important;box-sizing:border-box!important;display:flex!important;width:100%!important;min-width:0!important;min-height:0!important;height:auto!important;flex:0 0 auto!important;align-items:center!important;justify-content:flex-start!important;padding:max(24px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) 28px max(18px,env(safe-area-inset-left))!important;overflow:visible!important}
  .accessContent,.accessPanel>*{box-sizing:border-box!important;width:min(100%,620px)!important;max-width:620px!important;min-width:0!important;margin-left:auto!important;margin-right:auto!important;transform:none!important}
  .accessPanel .accessTabs,.accessPanel.signupActive .accessTabs{width:100%!important;min-height:54px!important;margin:0 0 20px!important}
  .accessTabs button,.accessSubmit,.demoAccess{min-height:48px!important;touch-action:manipulation!important}
  .accessForm.active{width:100%!important;gap:14px!important}
  .accessForm h2,.accessPanel.signupActive #signUpForm h2{font-size:clamp(28px,6.5vw,40px)!important;line-height:1.08!important;letter-spacing:-1px!important;white-space:normal!important;text-align:center!important}
  .accessForm>p{max-width:none!important;font-size:15px!important;line-height:1.45!important;text-align:center!important}
  .accessForm label{font-size:14px!important;line-height:1.35!important}
  .accessForm input:not([type='checkbox']),.verificationCode{box-sizing:border-box!important;width:100%!important;min-height:50px!important;padding:12px 13px!important;font-size:16px!important}
  .accessForm .agree{min-height:40px!important;font-size:13px!important}
  .accessSubmit{padding:13px 16px!important;font-size:15px!important}
  .checkoutSummary{box-sizing:border-box!important;width:100%!important}
  .demoNote{font-size:12px!important;line-height:1.4!important}
  .accessPanel .accessSecurity,.accessPanel.signupActive .accessSecurity,.accessPanel .accessFooter,.accessPanel.signupActive .accessFooter{position:relative!important;inset:auto!important;box-sizing:border-box!important;width:min(100%,620px)!important;max-width:620px!important;margin-left:auto!important;margin-right:auto!important}
  .accessPanel .accessSecurity,.accessPanel.signupActive .accessSecurity{margin-top:22px!important;padding:13px 15px!important}
  .accessSecurity b{font-size:14px!important}.accessSecurity span{font-size:12px!important;line-height:1.4!important}
  .accessPanel .accessFooter,.accessPanel.signupActive .accessFooter{margin-top:14px!important;padding:12px 0 0!important}
  .accessFooter{font-size:10px!important;line-height:1.35!important}.accessFooter a{display:inline-flex!important;min-height:34px!important;align-items:center!important;padding:5px 2px!important}
  .accessShowcase,.accessDashboardShowcase{order:2!important;box-sizing:border-box!important;width:100%!important;min-width:0!important;min-height:0!important;height:auto!important;flex:0 0 auto!important;padding:28px max(18px,env(safe-area-inset-right)) calc(34px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))!important;background-size:cover!important;background-position:center,center,58% center!important;background-repeat:no-repeat!important}
  .accessDashboardShowcase .accessBrand{position:relative!important;inset:auto!important;box-sizing:border-box!important;width:max-content!important;max-width:100%!important;margin:0 0 24px!important}
  .accessImageMessage{box-sizing:border-box!important;width:100%!important;max-width:760px!important;margin:0 0 24px!important}
  .accessImageMessage h1{font-size:clamp(38px,8vw,62px)!important;line-height:.98!important;letter-spacing:-2px!important}
  .accessImageMessage>p:not(.eyebrow){font-size:15px!important;line-height:1.48!important}
  .accessImageMessage .accessFeatures{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .accessImageMessage .accessFeatures span{min-width:0!important;min-height:48px!important;font-size:12px!important;white-space:normal!important}
  .accessDashboardShowcase .accessPrice{box-sizing:border-box!important;width:100%!important;max-width:760px!important;transform:none!important}
  .verificationOverlay,.drawerBackdrop,.pageTransition{box-sizing:border-box!important;padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))!important}
  .verificationModal,.transitionCard{box-sizing:border-box!important;width:min(100%,620px)!important;max-width:100%!important;max-height:calc(100svh - 28px)!important;overflow-y:auto!important;overscroll-behavior:contain!important}
  .topbar,.mainNav,main,.page,.hero,.homeGrid,.vaultGrid,.resumeLayout,.allInOne,.expiryTracker{box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important}
  .mainNav{justify-content:flex-start!important;overflow-x:auto!important;overscroll-behavior-inline:contain!important;scroll-snap-type:x proximity!important;-webkit-overflow-scrolling:touch!important}
  .mainNav button{min-height:48px!important;flex:0 0 auto!important;scroll-snap-align:start!important;touch-action:manipulation!important}
  button,input,select,textarea{touch-action:manipulation!important}
  main input,main select,main textarea,.settingsDrawer input,.settingsDrawer select,.settingsDrawer textarea{box-sizing:border-box!important;max-width:100%!important;font-size:16px!important}
  .settingsDrawer{box-sizing:border-box!important;width:min(100%,480px)!important;max-width:100%!important;padding-top:max(22px,env(safe-area-inset-top))!important;padding-bottom:max(22px,env(safe-area-inset-bottom))!important;overflow-y:auto!important}
}
@media (max-width:720px){
  .accessPanel{padding-top:max(20px,env(safe-area-inset-top))!important;padding-right:max(14px,env(safe-area-inset-right))!important;padding-left:max(14px,env(safe-area-inset-left))!important}
  .accessTwo{grid-template-columns:1fr!important;gap:12px!important}
  .checkoutSummary{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}.checkoutSummary>strong{text-align:left!important}
  .accessDashboardShowcase{padding-right:max(14px,env(safe-area-inset-right))!important;padding-left:max(14px,env(safe-area-inset-left))!important}
  .accessDashboardShowcase .accessBrand{padding:8px 11px!important;gap:8px!important}.accessDashboardShowcase .accessBrand img{width:58px!important;height:58px!important}.accessDashboardShowcase .accessBrand strong{font-size:25px!important}.accessDashboardShowcase .accessBrand small{font-size:8px!important;letter-spacing:1.8px!important}
  .accessImageMessage{padding:18px!important;border-radius:20px!important}.accessImageMessage h1{font-size:clamp(34px,10vw,46px)!important}.accessImageMessage .accessFeatures{grid-template-columns:1fr!important;gap:8px!important}
  .accessDashboardShowcase .accessPrice div{display:grid!important;grid-template-columns:1fr!important;gap:2px!important}.accessDashboardShowcase .accessPrice strong{font-size:26px!important}
  .topbar{position:sticky!important;top:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;padding:max(10px,env(safe-area-inset-top)) 14px 10px!important}
  .topbar .brand{min-width:0!important}.topbar .profile{min-height:44px!important;margin-left:0!important;font-size:11px!important}
  .headerStepBar{grid-column:1/-1!important;width:100%!important;min-width:0!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}.headerStepBar .stepBarInner{min-width:520px!important}
  .mainNav{min-height:64px!important;padding:8px 12px!important;gap:6px!important}.mainNav button{padding:11px 14px!important;font-size:13px!important}
  main{overflow-x:hidden!important}.page{padding-right:14px!important;padding-left:14px!important}.hero h1,.pageHead h1{overflow-wrap:anywhere!important}
  .warehouseScene{height:300px!important}.dashboardImage{object-position:center center!important}
  .homeGrid,.featureStrip,.vaultGrid,.skillGroups,.resumeLayout,.jobGrid,.certGrid,.expiryList,.packageChecklist,.pdfActions,.jobBoardCard{grid-template-columns:1fr!important}
  .pdfActions label,.pdfActions p,.boardConsent{grid-column:1!important}.jobBoardCard strong{text-align:left!important}
}
@media (max-width:420px){
  .accessPanel{padding-right:max(10px,env(safe-area-inset-right))!important;padding-left:max(10px,env(safe-area-inset-left))!important}
  .accessTabs button{padding:11px 8px!important}.accessForm h2,.accessPanel.signupActive #signUpForm h2{font-size:clamp(26px,8vw,34px)!important}
  .verificationModal{width:100%!important;padding:24px 17px!important}.verificationCode{letter-spacing:7px!important}
  .hero{padding:24px 18px!important}.hero h1{font-size:clamp(36px,12vw,50px)!important;letter-spacing:-2px!important}
}
@supports not (height:100dvh){@media (max-width:1050px){.accessPortal{height:100vh!important}}}
