/* Genesis P22 — responsive QA & interaction hardening */
:root{--p22-focus:#f59e0b;--p22-header-h:80px}
html{scroll-padding-top:calc(var(--p22-header-h) + 18px);overflow-x:clip}
body{min-width:320px;overflow-x:clip}
body.p22-menu-open{overflow:hidden;touch-action:none}
.p19-site-header{isolation:isolate}
.p19-icon,.p19-nav-link,.p19-more summary,.p19-cta,.p19-mobile-link,a,button,input,select,textarea{outline-offset:3px}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--p22-focus)!important;outline-offset:3px!important}
.p19-more summary{list-style:none}.p19-more summary::-webkit-details-marker{display:none}
.p19-more-panel{max-height:min(70vh,620px);overflow:auto;overscroll-behavior:contain}
.p19-mobile-menu{max-height:calc(100dvh - var(--p22-header-h));overflow:auto;overscroll-behavior:contain}
.p19-mobile-menu[aria-hidden="true"]{display:none!important}
img,video,iframe,canvas,svg{max-width:100%}
iframe{border:0}
input,select,textarea,button{font:inherit}
input,select,textarea{max-width:100%}
[dir="rtl"] input,[dir="rtl"] textarea,[dir="rtl"] select{text-align:right}
.p22-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:1399px){.p19-desktop-nav{display:none!important}.p19-menu-button{display:inline-flex!important}}
@media(min-width:1400px){.p19-mobile-menu{display:none!important}.p19-menu-button{display:none!important}}
@media(max-width:767px){:root{--p22-header-h:70px}.p19-cta span{display:none}.p19-actions{gap:.4rem}.p19-header-shell{padding-inline:12px}.p19-mobile-secondary-grid{grid-template-columns:1fr!important}.p19-more-panel{max-height:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(forced-colors:active){:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid CanvasText!important}.p19-nav-link.active,.p19-mobile-link.active{border:2px solid CanvasText}}
