/* Wspólny motyw Brand Book 1.0 dla stron prawnych. */
:root {
  --bg: #F2EEE6;
  --bg-alt: #E9E2D7;
  --card: #F8F5EF;
  --ink: #24201F;
  --ink-soft: #6B645C;
  --plum: #5B2947;
  --amber: #D89A45;
  --line: rgba(36,32,31,.16);
  --paper: #F2EEE6;
  --serif: Georgia, "Times New Roman", serif;
  --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --maxw: 920px;
}
body { background: var(--bg); color: var(--ink); font-family: var(--sans); font-size: 16px; line-height: 1.65; }
.wrap { max-width: var(--maxw); padding: 0 28px; }
header.top { position: relative; border-bottom: 1px solid var(--line); background: var(--bg); }
header.top::after { position: absolute; right: 7%; bottom: -62px; width: 124px; height: 124px; border: 1px solid rgba(216,154,69,.45); border-radius: 50%; content: ""; }
header.top .wrap { position: relative; z-index: 1; height: 88px; }
.brand { display: inline-flex; align-items: center; }
.brand-logo { display: block; width: 161px; height: auto; }
.back { display: inline-flex; align-items: center; min-height: 42px; padding: 0 17px; border: 1px solid var(--ink); border-radius: 999px; color: var(--ink); font-size: 14px; font-weight: 750; }
.back:hover { background: var(--ink); color: var(--paper); text-decoration: none; }
a { color: var(--ink); text-decoration-color: var(--amber); text-underline-offset: 3px; }
main { position: relative; overflow: hidden; padding: 78px 0 92px; }
main::before { position: absolute; top: 86px; right: -230px; width: 460px; height: 460px; border: 1px solid rgba(91,41,71,.14); border-radius: 50%; content: ""; }
main::after { position: absolute; bottom: 55px; left: 7%; width: 156px; height: 110px; opacity: .55; background-image: radial-gradient(circle, rgba(216,154,69,.7) 1.25px, transparent 1.45px); background-size: 22px 22px; content: ""; }
main .wrap { position: relative; z-index: 1; }
h1 { max-width: 760px; margin-bottom: 12px; font-family: var(--serif); font-size: clamp(42px, 6vw, 64px); font-weight: 400; letter-spacing: -.05em; line-height: .98; }
h2 { margin: 46px 0 14px; font-family: var(--serif); font-size: 29px; font-weight: 400; letter-spacing: -.035em; line-height: 1.08; }
h2::before { display: inline-block; width: 20px; height: 3px; margin: 0 10px 8px 0; background: var(--amber); content: ""; }
p, li { color: var(--ink); }
.meta { color: var(--ink-soft); font-size: 14px; }
table { overflow: hidden; border: 1px solid var(--line); border-radius: 0 0 24px 0; background: rgba(248,245,239,.7); }
th, td { border-color: var(--line); padding: 13px 14px; }
th { background: var(--bg-alt); }
.btn-settings { border-radius: 999px; background: var(--ink); color: var(--paper); font-weight: 750; }
.btn-settings:hover { background: var(--plum); }
footer { border-top: 1px solid rgba(242,238,230,.2); background: var(--ink); color: var(--paper); }
footer a { color: var(--paper); }
@media (max-width: 620px) {
  .wrap { padding: 0 20px; }
  header.top .wrap { height: 76px; gap: 14px; }
  .brand-logo { width: 161px; }
  .back { min-height: 38px; padding: 0 12px; font-size: 13px; }
  main { padding: 58px 0 72px; }
  h1 { font-size: 43px; }
  h2 { margin-top: 36px; font-size: 27px; }
  table { font-size: 14px; }
  main::before { right: -330px; }
}
