/* base.css — reset, typografia, pomocnicze, dostępność. */

/* ==========================================================================
   2. Reset / baza
   ========================================================================== */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden}
main{overflow-x:hidden}
body{
  margin:0;
  font-family:var(--body);
  font-size:16px;
  line-height:1.65;
  color:var(--ink);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue);text-decoration:none;transition:color .15s ease}
a:hover{color:var(--violet)}
ul,ol{margin:0;padding:0}
button{font-family:inherit}

h1,h2,h3,h4,h5{font-family:var(--display);color:var(--ink);margin:0 0 .4em;line-height:1.15}
h1{font-weight:800;font-size:clamp(30px,5vw,46px);letter-spacing:-.03em}
h2{font-weight:700;font-size:clamp(24px,3.2vw,32px);letter-spacing:-.02em}
h3{font-weight:600;font-size:20px;letter-spacing:-.01em}
h4{font-weight:700;font-size:18px;letter-spacing:-.01em}
p{margin:0 0 1em}
p:last-child{margin-bottom:0}


/* ==========================================================================
   15. Pomocnicze + dostępność
   ========================================================================== */
.screen-reader-text{
  border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;
  overflow:hidden;padding:0;position:absolute!important;word-wrap:normal!important;
}
.text-center{text-align:center}
.mt-s{margin-top:14px}.mt-m{margin-top:24px}.mt-l{margin-top:40px}
.muted{color:var(--slate)}
.divider{height:1px;background:var(--line);border:0;margin-block:clamp(32px,5vw,52px)}
:where(a,button,input,textarea,select,summary):focus-visible{outline:3px solid rgba(61,99,224,.45);outline-offset:2px}

.pagination{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:40px}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-family:var(--display);font-weight:600;font-size:15px;color:var(--ink)}
.pagination .page-numbers.current{background:var(--ink);color:#fff;border-color:var(--ink)}
.pagination a.page-numbers:hover{color:var(--violet);border-color:#dfe4f1}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}

