/* Stage 21: non-destructive readability and responsive enhancement */
:root{--cx21-focus:#63ddec}
html{overflow-x:clip;-webkit-text-size-adjust:100%}
body{overflow-wrap:break-word}
main,section,article,aside,header,footer{min-width:0}
img,video,svg{max-width:100%;height:auto}
iframe{max-width:100%}
h1,h2,h3,h4,p,li{overflow-wrap:break-word}
h1,h2,h3{hyphens:none;text-wrap:balance}
p,li{line-height:1.65}
:where(main) :where(p,li){max-width:85ch}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--cx21-focus);outline-offset:3px}
:where(button,input,select,textarea){font:inherit}
:where(.cx-card,.card,.tile,.panel,.cx-p-card){min-width:0}
:where(.cx-proof-grid,.cx-p-grid,.cx-stewardship-grid,.cx-directory-grid)>*{min-width:0}
:where(table){display:block;max-width:100%;overflow-x:auto}
@media(max-width:900px){:where(.cx-proof-grid,.cx-stewardship-grid){grid-template-columns:repeat(2,minmax(0,1fr))} :where(.cx-p-grid){grid-template-columns:1fr}}
@media(max-width:640px){:where(.cx-proof-grid,.cx-stewardship-grid,.cx-directory-grid){grid-template-columns:1fr} :where(.cx-market-proof,.cx-stewardship){margin-inline:1rem;padding:1.25rem} :where(h1){font-size:clamp(1.9rem,8vw,3rem)} :where(h2){font-size:clamp(1.45rem,6vw,2.2rem)} :where(.cx-p-inner){padding-inline:18px} :where(button,[role=button]){min-height:40px}}
@media(prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
