/* ============================================
   DOCS — wspólne style dla dokumentów prawnych
   (regulamin.html, polityka-prywatnosci.html, polityka-cookies.html)
   Wszystkie trzy dokumenty używają identycznej struktury
   rozdziałowej (.chapter > .doc-section), więc style są
   w pełni współdzielone, bez podziału na warianty.
   ============================================ */

body{font-family:var(--font-body); color:var(--text-dark); background:var(--white); line-height:1.65;}
h1,h2,h3{font-family:var(--font-display); font-weight:600; line-height:1.2; color:var(--morski-lesny);}
.container{max-width:800px; margin:0 auto; padding:0 24px;}

/* header */
header.site-header{display:flex; align-items:center; justify-content:space-between; padding:18px 40px; background:var(--white); border-bottom:1px solid #eee; position:sticky; top:0; z-index:100;}
.logo{font-family:var(--font-display); font-size:1.4rem; font-weight:700; display:flex; align-items:center; gap:8px; color:var(--text-dark); text-decoration:none;}
.logo-badge{width:28px; height:28px; border-radius:50%; object-fit:cover; display:block;}
.back-link{font-size:.85rem; color:var(--morski-lesny); text-decoration:none; border:1px solid var(--morski-lesny); padding:9px 18px; border-radius:4px; transition:background-color .2s ease, color .2s ease;}
.back-link:hover{background:var(--morski-lesny); color:var(--white);}

/* hero band */
.doc-hero{background:var(--morski-lesny); color:var(--text-light); padding:60px 0 46px;}
.doc-hero .eyebrow{font-size:.75rem; text-transform:uppercase; letter-spacing:2px; color:var(--zloto); font-weight:600; margin-bottom:14px; display:block;}
.doc-hero h1{color:var(--white); font-size:2.2rem; margin-bottom:14px;}
.doc-hero p{opacity:.8; font-size:.92rem;}

/* body / chapters */
main{padding:56px 0 90px;}
.chapter{margin-bottom:46px;}
.chapter-title{font-size:.75rem; text-transform:uppercase; letter-spacing:2px; color:var(--zloto-dark); font-weight:600; margin-bottom:6px; display:block;}
.chapter h2{font-size:1.6rem; margin-bottom:24px; padding-bottom:14px; border-bottom:2px solid var(--len);}

/* individual sections within a chapter */
.doc-section{margin-bottom:30px; scroll-margin-top:80px;}
.doc-section h3{font-size:1.15rem; margin-bottom:10px; color:var(--morski);}
.doc-section p{font-size:.93rem; color:#444; margin-bottom:10px;}
.doc-section ul{margin:0 0 10px 0; padding-left:22px;}
.doc-section ul li{font-size:.93rem; color:#444; margin-bottom:6px;}
.doc-section ul li::marker{color:var(--zloto-dark);}
.doc-section a.inline-link{color:var(--morski); text-decoration:underline;}
.doc-section a.inline-link:hover{color:var(--zloto-dark);}

/* numbered paragraph lists (e.g. §1 ust. 1-8) */
.par-list{margin:0 0 10px 0; padding-left:22px;}
.par-list li{font-size:.93rem; color:#444; margin-bottom:8px;}
.par-list li::marker{color:var(--morski); font-weight:600;}

/* highlighted info box (admin data, cookie summary, etc.) */
.admin-box{background:var(--len-2); border-left:3px solid var(--zloto); padding:18px 22px; border-radius:4px; margin-bottom:14px; font-size:.92rem; color:#444;}
.admin-box strong{color:var(--morski-lesny);}

/* table of contents */
.toc{background:var(--len-2); border-radius:8px; padding:26px 28px; margin-bottom:50px; scroll-margin-top:80px;}
.toc h2{font-size:1.05rem; margin-bottom:14px; border:none; padding:0; text-transform:uppercase; letter-spacing:1px; font-family:var(--font-body); font-weight:600; color:var(--morski-lesny);}
.toc ol{padding-left:20px;}
.toc ol li{font-size:.9rem; margin-bottom:9px;}
.toc-link{background:none; border:none; padding:0; font-family:inherit; font-size:.9rem; color:var(--text-dark); cursor:pointer; text-align:left;}
.toc-link:hover{color:var(--morski);}

/* footer */
footer.site-footer{background:var(--morski-lesny); color:var(--text-light); padding:30px 0; text-align:center; font-size:.78rem; opacity:.7;}

/* back to top button */
.back-to-top{position:fixed; bottom:28px; right:28px; width:48px; height:48px; border-radius:50%; background:var(--zloto); border:none; box-shadow:0 6px 18px rgba(0,0,0,0.18); cursor:pointer; display:flex; align-items:center; justify-content:center; z-index:200; opacity:0; visibility:hidden; transform:translateY(10px); transition:opacity .25s ease, transform .25s ease, background-color .2s ease;}
.back-to-top.visible{opacity:1; visibility:visible; transform:translateY(0);}
.back-to-top:hover{background:var(--zloto-dark);}
.back-to-top svg{width:20px; height:20px; stroke:var(--morski-lesny); fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round;}

/* optional disclaimer note box */
.note-box{background:#fdf6ea; border:1px solid var(--zloto); border-radius:6px; padding:16px 20px; margin-bottom:40px; font-size:.85rem; color:#5a4a2a;}
.note-box strong{color:var(--zloto-dark);}

@media(max-width:700px){
  header.site-header{padding:16px 20px;}
  .doc-hero h1{font-size:1.7rem;}
}
