:root { color-scheme: light; }

/* Dodatki zgodności / stopka prawna. Nie ingerują w główny layout strony. */
.consent-box { display: grid; gap: 12px; margin: 14px 0 18px; }
.check-row { align-items: flex-start; }
.check-row input[type="checkbox"] { margin-top: 4px; flex: 0 0 auto; }
.check-row span { line-height: 1.45; }
.data-note a, .footer-company a { text-decoration: underline; text-underline-offset: 2px; }

.legal-footer { gap: 28px; }
.footer-company { max-width: 900px; }
.footer-company p { line-height: 1.6; }

.serseo-realizacja { display:flex; justify-content:center; width:100%; padding: 12px 20px 22px; }
.serseo-link-text { display:inline-block; padding:8px 12px; border-radius:8px; font-size:12px; line-height:1.3; color:inherit; opacity:.72; text-decoration:none; }
.serseo-link-text:hover, .serseo-link-text:focus-visible { opacity:1; text-decoration:underline; text-underline-offset:3px; }
.serseo-link-text:focus-visible { outline:2px solid currentColor; outline-offset:3px; }

/* Wspólny wygląd podstron prawnych */
.legal-page { margin:0; background:#121210; color:#f5f1e8; font-family: Arial, Helvetica, sans-serif; }
.legal-shell { width:min(980px, calc(100% - 32px)); margin:0 auto; padding:48px 0 64px; }
.legal-top { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:42px; }
.legal-top img { width:110px; height:auto; }
.legal-back { color:#f5f1e8; text-decoration:none; border:1px solid rgba(255,255,255,.22); padding:10px 14px; border-radius:999px; }
.legal-back:hover,.legal-back:focus-visible { border-color:#fff; }
.legal-article { background:#f7f4ed; color:#1d1c19; border-radius:24px; padding:clamp(24px,5vw,56px); box-shadow:0 24px 80px rgba(0,0,0,.24); }
.legal-article h1 { margin:0 0 10px; font-size:clamp(32px,5vw,54px); line-height:1.05; }
.legal-article .updated { color:#6d6a63; margin:0 0 34px; }
.legal-article h2 { margin:34px 0 10px; font-size:22px; }
.legal-article p,.legal-article li { line-height:1.7; }
.legal-article a { color:#78471f; }
.legal-article ul { padding-left:22px; }
.legal-note { padding:14px 16px; background:#ece5d7; border-radius:12px; }
.legal-mini-footer { color:#d8d1c5; font-size:13px; line-height:1.65; margin-top:26px; text-align:center; }
.legal-mini-footer a { color:inherit; }

@media (max-width: 767px) {
  .legal-footer { align-items:flex-start; }
  .footer-company p { font-size:12px; }
  .legal-shell { width:min(100% - 20px, 980px); padding-top:24px; }
  .legal-top { margin-bottom:22px; }
  .legal-top img { width:82px; }
  .legal-article { border-radius:18px; padding:24px 18px 32px; }
  .legal-article h2 { font-size:20px; }
}
