/* BLUBUD responsive base: the few rules every page shares. Phones, iPads and laptops already flow from each page's own breakpoints;
   this keeps text legible when zoomed by the OS and scales type up gently on very large monitors (16px up to 1600px wide, 20px at 2560px). */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
img,video,canvas{max-width:100%}
@media(min-width:1600px){html{font-size:clamp(16px,calc(16px + (100vw - 1600px)*.0045),22px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* nothing may push a page wider than the screen */
.info-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))!important}
.info-card{min-width:0;overflow-wrap:anywhere}
@media(max-width:640px){table.data-table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}}
