/* UPRNTLS v5.29.0 — stability, responsive, accessibility and interaction hardening */

/* Keep controls usable without overriding each product surface's visual language. */
:where(a,button,input,select,textarea,summary,[role="button"]){
  -webkit-tap-highlight-color:transparent;
}
:where(button,[role="button"],summary,a[href]){touch-action:manipulation}
:where(button,input,select,textarea,a[href],summary,[role="button"]):focus-visible{
  outline:2px solid color-mix(in srgb,#15a75a 72%,transparent)!important;
  outline-offset:2px!important;
}
:where(button,[aria-disabled="true"],button:disabled,input:disabled,select:disabled,textarea:disabled){
  cursor:not-allowed;
}
:where(img,video,canvas,svg){max-width:100%}

/* Public-site overflow protection. Applied only to public marketing/industry pages. */
html.uprntls-public-stability,html.uprntls-public-stability body{max-width:100%;overflow-x:clip}
html.uprntls-public-stability :where(main,section,header,footer,nav,div,article,aside){min-width:0}
html.uprntls-public-stability :where(.industry-shell,.feature-shell,.landing-shell,.section-inner,.footer-inner){
  max-width:100%;
}
html.uprntls-public-stability :where(.industry-actions,.final-actions,.feature-proof,.hero-actions,.cta-actions){
  flex-wrap:wrap;
}
html.uprntls-public-stability :where(h1,h2,h3,p,b,strong,span,a){overflow-wrap:break-word}

/* Canonical public navigation: resilient at browser zoom and small visual viewports. */
.site-nav.trust-nav .nav-inner>*{min-width:0}
.site-nav.trust-nav .theme-toggle{
  min-width:44px!important;
  min-height:44px!important;
  flex:0 0 44px!important;
  display:inline-grid!important;
  place-items:center!important;
}
.site-nav.trust-nav .mega-menu{contain:layout style}
.site-nav.trust-nav .mega-menu :where(a,div,span,b,strong,small,em){min-width:0}
.site-nav.trust-nav .industries-menu-v516 .industry-menu-grid a{
  overflow:hidden!important;
}
.site-nav.trust-nav .industries-menu-v516 .industry-menu-grid a>span,
.site-nav.trust-nav .industries-menu-v516 .industry-menu-grid b{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
.site-nav.trust-nav .industries-menu-v516 .industry-menu-grid b{
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:none!important;
}
.site-nav.trust-nav .public-mobile-nav a,
.site-nav.trust-nav .public-mobile-nav summary{min-height:44px!important}

/* Small-screen public pages: keep CTAs and content inside the viewport. */
@media(max-width:680px){
  html.uprntls-public-stability :where(.industry-actions,.final-actions,.hero-actions,.cta-actions){
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
  }
  html.uprntls-public-stability :where(.industry-actions,.final-actions,.hero-actions,.cta-actions) :where(.btn,a,button){
    width:100%!important;
    max-width:100%!important;
    justify-content:center!important;
  }
  .site-nav.trust-nav .nav-actions{gap:6px!important}
}
@media(max-width:390px){
  .site-nav.trust-nav .nav-inner{padding-inline:10px!important;gap:7px!important}
  .site-nav.trust-nav .site-brand img{width:102px!important}
  .site-nav.trust-nav .theme-toggle,
  .site-nav.trust-nav .public-mobile-toggle{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;flex-basis:40px!important}
  .site-nav.trust-nav .public-mobile-nav:not([hidden]){left:6px!important;right:6px!important}
}

/* Unified non-blocking notification surface, replacing legacy browser alert dialogs. */
#uprntlsToastRegion{
  position:fixed;
  z-index:2147483000;
  right:max(16px,env(safe-area-inset-right));
  bottom:max(16px,env(safe-area-inset-bottom));
  width:min(390px,calc(100vw - 32px));
  display:grid;
  gap:8px;
  pointer-events:none;
}
.uprntls-toast{
  pointer-events:auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:12px;
  padding:13px 14px;
  border:1px solid color-mix(in srgb,var(--line,#d9e2dc) 88%,transparent);
  border-radius:13px;
  background:var(--surface,#fff);
  color:var(--ink,#17231b);
  box-shadow:0 18px 50px rgba(5,33,17,.18);
  font:600 13px/1.45 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .16s ease,transform .16s ease;
}
.uprntls-toast.show{opacity:1;transform:translateY(0)}
.uprntls-toast[data-tone="error"]{border-color:color-mix(in srgb,#c53a35 42%,var(--line,#d9e2dc))}
.uprntls-toast button{
  width:28px;height:28px;min-width:28px;min-height:28px;
  border:0;border-radius:8px;background:transparent;color:inherit;
  font:800 18px/1 system-ui;cursor:pointer;
}
.uprntls-toast button:hover{background:color-mix(in srgb,currentColor 8%,transparent)}
html[data-theme="dark"] .uprntls-toast{box-shadow:0 18px 54px rgba(0,0,0,.42)}

/* Motion should never be required to understand state changes. */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
