:root{
 --ziel:#1F4D3A;--ziel2:#2E6B52;--krem:#F7F1E2;--gran:#1B2A5C;--tekst:#14213D;
 --krat:#E4EBF2;--czer:#9E2B2B;--zolty:#FFE58A;--jasny:#EEF4F0;--ramka:#1F4D3A;
 --rozmiar:21px;
}
html.duze{--rozmiar:25px}
*{box-sizing:border-box}
html{font-size:var(--rozmiar)}
body{margin:0;font-family:Verdana,Tahoma,"Segoe UI",Arial,sans-serif;color:var(--tekst);
 line-height:1.6;background:#FFFDF7}
a{color:var(--gran);text-decoration:underline;text-underline-offset:3px}
a:focus-visible,button:focus-visible{outline:4px solid #E0A400;outline-offset:3px}
img{max-width:100%;height:auto;display:block}

.pomin{position:absolute;left:-9999px}
.pomin:focus{left:16px;top:16px;background:#fff;padding:12px;z-index:9;font-size:1rem}

/* nagłówek i menu: zawsze widoczne, bez ukrytego „hamburgera” */
.gora{background:var(--ziel);color:#fff}
.gora .w{max-width:1040px;margin:0 auto;padding:14px 16px 6px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-weight:bold;font-size:1.15rem;flex:1 1 auto}
.logo img{width:56px;height:56px;border-radius:50%;border:3px solid #fff}
.logo small{display:block;font-weight:normal;font-size:.8rem;opacity:.95}
.litery{background:#fff;color:var(--ziel);border:0;border-radius:10px;padding:10px 14px;font:inherit;font-size:.85rem;font-weight:bold;cursor:pointer}
nav.menu{background:var(--ziel)}
nav.menu ul{list-style:none;margin:0 auto;padding:4px 12px 14px;max-width:1040px;display:flex;flex-wrap:wrap;gap:8px}
nav.menu a{display:block;background:#fff;color:var(--ziel);text-decoration:none;font-weight:bold;
 padding:10px 16px;border-radius:10px;font-size:.95rem;min-height:48px;line-height:28px}
nav.menu a[aria-current=page]{background:var(--zolty);color:var(--tekst)}
nav.menu a.zeszyt{background:var(--gran);color:#fff}

main{max-width:1040px;margin:0 auto;padding:20px 16px 40px}
h1{font-size:1.75rem;line-height:1.25;color:var(--ziel);margin:.4em 0 .4em}
h2{font-size:1.4rem;line-height:1.3;color:var(--ziel);margin:1.6em 0 .5em}
h3{font-size:1.15rem;line-height:1.35;color:var(--gran);margin:1.2em 0 .4em}
p,li{max-width:46em}
.wstep{font-size:1.1rem}
.cytat{font-style:italic;color:var(--ziel2);border-left:6px solid var(--ziel2);padding:4px 0 4px 14px;margin:18px 0}

.hero{display:grid;grid-template-columns:1fr;gap:20px;align-items:center;background:var(--krem);
 border-radius:16px;padding:20px;border:2px solid #E5D9BC}
.hero img{border-radius:14px;max-height:420px;object-fit:cover;width:100%}
@media(min-width:760px){.hero{grid-template-columns:1.3fr 1fr}}

.przycisk{display:inline-block;background:var(--ziel);color:#fff;text-decoration:none;font-weight:bold;
 padding:14px 22px;border-radius:12px;margin:8px 8px 8px 0;min-height:54px;font-size:1rem}
.przycisk.drugi{background:#fff;color:var(--ziel);border:3px solid var(--ziel)}
.przycisk.gran{background:var(--gran)}

.kafle{display:grid;grid-template-columns:1fr;gap:16px;margin:16px 0}
@media(min-width:640px){.kafle{grid-template-columns:1fr 1fr}}
@media(min-width:960px){.kafle.trzy{grid-template-columns:1fr 1fr 1fr}}
.kafel{background:#fff;border:3px solid var(--ramka);border-radius:14px;padding:18px;display:block;
 text-decoration:none;color:var(--tekst)}
a.kafel:hover{background:var(--jasny)}
.kafel h3{margin-top:0;color:var(--ziel)}
.kafel p{margin:.3em 0 0}

.ramka{background:var(--krem);border:2px solid #E5D9BC;border-radius:14px;padding:16px 18px;margin:18px 0}
.uwaga{background:#FFF4D6;border:3px solid #B88A00;border-radius:14px;padding:16px 18px;margin:18px 0}
.lekarz{background:#E9F2FB;border:3px solid var(--gran);border-radius:14px;padding:16px 18px;margin:18px 0}
.spis{background:#fff;border:2px solid var(--ramka);border-radius:14px;padding:12px 18px}
.spis a{display:inline-block;padding:6px 0}

table{width:100%;border-collapse:collapse;font-size:.9rem;background:#fff}
th,td{border:2px solid #C9D6CE;padding:10px;text-align:left;vertical-align:top}
th{background:var(--jasny);color:var(--ziel)}
.tabela{overflow-x:auto}
.data{color:#3A4A40;font-size:.85rem}

.nowosc{background:#fff;border-left:8px solid var(--ziel2);border-radius:10px;padding:12px 16px;margin:12px 0}
.nowosc .data{display:block}
.nowosc h3{margin:.2em 0}

.stopka{background:var(--gran);color:#fff;margin-top:30px}
.stopka .w{max-width:1040px;margin:0 auto;padding:22px 16px}
.stopka a{color:#fff}
.stopka .ai{font-weight:bold;font-size:1rem;border:2px solid #fff;border-radius:10px;padding:12px 14px}
.stopka ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:6px 20px}

@media print{nav.menu,.litery,.stopka ul{display:none}}
input.cena{width:7em;font:inherit;font-size:1rem;padding:8px;border:2px solid var(--ziel);border-radius:8px}
@media(max-width:600px){
 .gora .w{padding:10px 16px 4px}
 .logo img{width:44px;height:44px}
 .logo small{display:none}
 .litery{padding:8px 10px}
 nav.menu ul{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px 16px 12px}
 nav.menu a{padding:8px 10px;font-size:.85rem;text-align:center;min-height:46px}
 nav.menu li:last-child{grid-column:1/-1}
}

.baner{width:100%;max-height:440px;object-fit:cover;border-radius:16px;margin:8px 0 18px}
.miniatura{width:calc(100% + 36px);margin:-18px -18px 12px;max-width:none;aspect-ratio:4/3;object-fit:cover;border-radius:11px 11px 0 0}
.galeria{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:640px){.galeria{grid-template-columns:1fr 1fr}}
.galeria figure,figure.obok{margin:0;background:#fff;border:2px solid #E5D9BC;border-radius:14px;overflow:hidden}
.galeria img{aspect-ratio:4/3;object-fit:cover;width:100%}
figcaption{padding:10px 14px;font-size:.9rem}
figure.obok{max-width:360px;margin:16px 0}
.krzyzowka{display:grid;grid-template-columns:2.2em repeat(calc(var(--kol) - 1),minmax(0,2.4em));gap:4px;margin:12px 0;max-width:100%}
.krzyzowka .nr{font-weight:bold;align-self:center;color:var(--ziel)}
input.kr{width:100%;aspect-ratio:1;text-align:center;font:inherit;font-size:1rem;font-weight:bold;text-transform:uppercase;border:2px solid var(--gran);border-radius:6px;padding:0;background:#fff;color:var(--tekst)}
input.kr.klucz{background:var(--zolty)}
input.kr.dobrze{border-color:#1B7A3A;background:#DFF3E4}
input.kr.klucz.dobrze{background:#F5E27A}
input.kr.zle{border-color:var(--czer);background:#FBE3E3}
.pytania li{margin:4px 0}
.odp{display:block;width:100%;text-align:left}
fieldset.opcje{border:0;padding:0;margin:0}
fieldset.opcje label{display:block;padding:10px 0;font-size:1rem}
fieldset.opcje input{width:24px;height:24px;vertical-align:middle;margin-right:8px}

.filmy{display:grid;grid-template-columns:1fr;gap:16px;justify-items:center}
@media(min-width:640px){.filmy{grid-template-columns:1fr 1fr}}
@media(min-width:960px){.filmy{grid-template-columns:1fr 1fr 1fr}}
.film{margin:0;max-width:320px;width:100%;background:#fff;border:2px solid #E5D9BC;border-radius:14px;overflow:hidden}
.film video{width:100%;aspect-ratio:9/16;background:#1B2A5C;display:block}
.film .data{display:block}
.spolecznosc{background:var(--krem);border-top:3px solid var(--ziel);margin-top:30px}
.spolecznosc .w{max-width:1040px;margin:0 auto;padding:18px 16px}
.sm{display:inline-block;color:#fff;font-weight:bold;text-decoration:none;padding:12px 20px;border-radius:12px;margin:6px 8px 6px 0;min-height:50px}
.sm.yt{background:#B3141B}.sm.tt{background:#111}.sm.ig{background:#8A2A7A}
.spolecznosc + .stopka{margin-top:0}

nav.menu a.rozmowa{background:var(--zolty);color:var(--tekst);border:2px solid #B88A00}
.formularz label{display:block;font-weight:bold;margin:14px 0 4px}
.formularz input,.formularz select,.formularz textarea{width:100%;font:inherit;font-size:1rem;padding:12px;border:2px solid var(--ziel);border-radius:10px;background:#fff;color:var(--tekst)}
.formularz label.zgoda{font-weight:normal;display:flex;gap:10px;align-items:flex-start}
.formularz label.zgoda input{width:26px;height:26px;flex:none;margin-top:3px}
.list-czytelnika{background:#fff;border:2px solid #E5D9BC;border-radius:14px;padding:14px 18px;margin:14px 0}
.tresc-listu{font-style:italic}
.zaproszenie{background:var(--ziel);color:#fff;border-radius:16px;padding:20px;margin:24px 0}
.zaproszenie h2{color:#fff;margin-top:0}
.zaproszenie .przycisk{background:var(--zolty);color:var(--tekst)}

figure.sekcja{margin:10px 0 16px;max-width:640px;border-radius:14px;overflow:hidden;border:2px solid #E5D9BC;background:#fff}
figure.sekcja img{aspect-ratio:4/3;object-fit:cover;width:100%}
