html,body{overflow-x:clip}
/* Menu mobilne: blokada scrolla na <html>, nie na <body> — overflow:hidden na body psuje sticky header (przycisk zamykania ucieka) */
body.nav-open{overflow:visible!important}
html:has(body.nav-open){overflow:hidden}
main :is(div,figure,section,article):has(> table){overflow:visible!important}
main table{width:100%!important;min-width:0!important;max-width:100%!important;table-layout:auto}
main table th,main table td{white-space:normal!important;overflow-wrap:break-word;hyphens:auto}
@media (max-width:760px){
main table.t-stack thead{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
main table.t-stack,main table.t-stack tbody,main table.t-stack tr{display:block;width:100%}
main table.t-stack tr{padding:.5rem 0;border-bottom:1px solid rgba(127,127,127,.35)}
main table.t-stack td,main table.t-stack tbody th{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;width:100%;text-align:right!important;padding:.3rem .8rem!important;border:0!important}
main table.t-stack td[data-label]::before,main table.t-stack tbody th[data-label]::before{content:attr(data-label);font-weight:600;text-align:left;flex:0 0 42%;opacity:.8}
main table.t-stack tbody th{font-weight:700}
main table.t-stack caption{display:block;width:100%}
main table.t-stack tr>:first-child{justify-content:flex-start;text-align:left!important;font-weight:700;font-size:1.02em}
main table.t-stack tr>:first-child::before{display:none}
}
.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.js .reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none}}