/* ===== Base responsive helpers ===== */
*,*::before,*::after{box-sizing:border-box}
img,svg,video,canvas{max-width:100%;height:auto;display:block}
iframe{width:100%;max-width:100%;aspect-ratio:16/9}
.container{width:min(100%,1200px);margin-inline:auto;padding-inline:16px}
.table-wrap{overflow-x:auto}
.flex-grid{display:flex;flex-wrap:wrap;gap:16px}
.flex-grid>*{flex:1 1 calc(33.333% - 16px)}
@media (max-width:900px){.flex-grid>*{flex-basis:calc(50% - 16px)}}
@media (max-width:600px){.flex-grid>*{flex-basis:100%}}
.nav-toggle{display:none;align-items:center;gap:8px;border:0;background:#0a5;color:#fff;padding:8px 12px;border-radius:6px;cursor:pointer}
.nav-toggle .bars{font-size:20px;line-height:1}
@media (max-width:768px){nav .menu{display:none;flex-direction:column;gap:10px;padding:0;margin:0;list-style:none}nav.open .menu{display:flex}.nav-toggle{display:inline-flex}}
header img.logo,.logo{max-height:56px;height:auto}
