
:root{--dark:#103b35;--green:#176b5a;--bright:#2da58b;--mint:#e9f4ef;--cream:#faf8f3;--ink:#192e2b;--muted:#5b706c;--stroke:#d8e4dc;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Segoe UI',Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.62}a{color:inherit}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}button{cursor:pointer}.wrap{width:min(1160px,calc(100% - 44px));margin-inline:auto}.topline{background:#103b35;color:#e8f8f2;font-size:13px;text-align:center;padding:7px 14px}.nav{background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 1px 16px #19382f11}.navinner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:83px}.brand{text-decoration:none;display:flex;flex-direction:column;color:var(--dark);line-height:1}.brand b{letter-spacing:1.5px;font:800 24px 'Segoe UI',Arial,sans-serif}.brand small{margin-top:6px;letter-spacing:2.5px;font-weight:700;font-size:10px;color:var(--green)}.navlinks{display:flex;align-items:center;gap:24px}.navlinks a{text-decoration:none;font-size:14px;font-weight:700}.navlinks a:hover,.footer a:hover{color:var(--bright)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:49px;background:var(--green);border:2px solid var(--green);color:white;text-decoration:none;border-radius:12px;padding:12px 22px;font-size:15px;font-weight:800;transition:transform .2s,background .2s;white-space:normal;text-align:center}.btn:hover{background:#0b493c;transform:translateY(-1px)}.btn.white{background:white;color:var(--dark);border-color:white}.btn.outline{background:transparent;color:var(--green)}.btn.lightoutline{background:transparent;color:#fff;border-color:#a5d1c3}.btn.small{min-height:42px;padding:8px 16px}.menu-toggle{display:none;background:transparent;border:1px solid var(--stroke);padding:7px 10px;border-radius:8px;font-size:22px}.hero{background:linear-gradient(112deg,#eff7f1,#fcfbf8);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center;padding-block:68px 75px}.eyebrow{font-size:12px;color:var(--green);letter-spacing:1.9px;font-weight:800;text-transform:uppercase}.hero h1,.pagehero h1{font:800 clamp(37px,4.8vw,61px)/1.13 'Segoe UI',Arial,sans-serif;letter-spacing:-2.2px;margin:16px 0 22px;color:var(--dark)}.hero p.lead,.pagehero p{font-size:19px;color:#4b655e;line-height:1.7;max-width:590px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.trustline{display:flex;gap:24px;flex-wrap:wrap;margin-top:26px;font-size:13px;font-weight:700;color:#45645a}.trustline span:before{content:'✓';color:#13856e;margin-right:7px}.hero-photo{position:relative}.hero-photo img{width:100%;height:515px;object-fit:cover;object-position:61% center;border-radius:160px 22px 22px 22px;box-shadow:25px 23px 0 #d4eadd}.photo-note{position:absolute;bottom:25px;left:-27px;background:white;border-radius:14px;padding:17px 21px;box-shadow:0 12px 40px #173e3426;max-width:245px}.photo-note b{color:var(--dark);font-size:21px;display:block}.photo-note span{font-size:12px;color:var(--muted)}section{padding-block:76px}.sectionhead{max-width:745px;margin-bottom:30px}.sectionhead h2{font:800 clamp(28px,3vw,43px)/1.18 'Segoe UI',Arial,sans-serif;margin:10px 0 14px;letter-spacing:-1.2px;color:var(--dark)}.sectionhead p{font-size:17px;color:var(--muted)}.stats{background:var(--dark);padding-block:33px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.stat{text-align:center;color:white;padding:12px}.stat b{font:800 33px 'Segoe UI',Arial,sans-serif;display:block}.stat span{color:#d4e5de;font-size:14px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:white;border:1px solid var(--stroke);padding:29px;border-radius:18px;box-shadow:0 14px 32px #163b3308}.card .number{font:800 20px 'Segoe UI',Arial,sans-serif;color:var(--green);margin-bottom:15px}.card h3{font:800 20px/1.3 'Segoe UI',Arial,sans-serif;margin:0 0 12px}.card p{color:var(--muted);font-size:15px;margin:0 0 17px}.textlink{color:var(--green);font-weight:800;text-decoration:none}.shade{background:var(--cream)}.mint{background:var(--mint)}.split{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.callout{background:var(--dark);color:white;border-radius:22px;padding:42px}.callout h2{font:800 36px/1.2 'Segoe UI',Arial,sans-serif;margin:10px 0}.callout p{color:#d2e8df}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.step{padding:29px;background:white;border-radius:17px;border:1px solid var(--stroke)}.step b{color:var(--green);font-size:24px}.step h3{font:800 20px 'Segoe UI',Arial,sans-serif;margin:10px 0}.step p{color:var(--muted);margin:0}.pagehero{background:var(--mint);padding:65px 0 57px}.pagehero h1{font-size:clamp(34px,4vw,51px);max-width:950px}.pagehero p{max-width:860px}.content-grid{display:grid;grid-template-columns:minmax(0,730px) minmax(240px,310px);gap:55px;align-items:start}.article h2{font:800 28px/1.3 'Segoe UI',Arial,sans-serif;color:var(--dark);margin:38px 0 12px}.article h3{font:800 20px 'Segoe UI',Arial,sans-serif;margin:27px 0 10px;color:var(--dark)}.article p,.article li{font-size:17px;line-height:1.83}.article p{margin:0 0 20px}.article ul{padding-left:24px}.sidebar{position:sticky;top:110px;background:var(--cream);padding:27px;border-radius:18px;border:1px solid var(--stroke)}.sidebar h3{margin-top:0;font:800 22px 'Segoe UI',Arial,sans-serif}.sidebar p{color:var(--muted)}.aside-links a{display:block;padding:8px 0;text-decoration:none;color:var(--green);font-weight:700;border-top:1px solid var(--stroke)}.highlight{border-left:4px solid var(--green);padding:15px 22px;background:var(--mint);border-radius:0 12px 12px 0;margin:24px 0}.faq details{border-bottom:1px solid var(--stroke);padding:19px 0}.faq summary{cursor:pointer;font:800 17px/1.4 'Segoe UI',Arial,sans-serif;color:var(--dark)}.faq p{color:var(--muted);margin:12px 0 3px}.contactband{background:var(--dark);color:white;padding-block:55px}.contactband .split{gap:30px}.contactband h2{font:800 35px/1.2 'Segoe UI',Arial,sans-serif;margin:6px 0}.contactband p{color:#d2e6de}.contactband .actions{justify-content:flex-end}.footer{background:#0c2d28;color:#d6e7e2;padding:55px 0 23px}.footer-cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px}.footer h3{color:#fff;font:800 17px 'Segoe UI',Arial,sans-serif;margin:0 0 15px}.footer a{display:block;text-decoration:none;font-size:14px;margin:9px 0}.footer .brand{color:white}.footer .brand small{color:#98cbbc}.footnote{font-size:12px;color:#c3d6ce;line-height:1.6}.foot-bottom{border-top:1px solid #ffffff29;margin-top:30px;padding-top:18px;font-size:12px;color:#bdd5cc}.formbox{background:white;border:1px solid var(--stroke);padding:34px;border-radius:22px;box-shadow:0 18px 45px #123c3214}.formbox h2{font:800 27px 'Segoe UI',Arial,sans-serif;color:var(--dark);margin:0 0 10px}.formbox .intro{color:var(--muted);margin-top:0}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:6px}.field.wide{grid-column:1/-1}.field label{font-weight:700;font-size:14px}.field input,.field select,.field textarea{border:1px solid #bacfc5;background:#fff;border-radius:11px;padding:12px 14px;min-height:49px;width:100%;color:var(--ink)}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid #bfece0;border-color:var(--green)}.legal-note{font-size:12px;line-height:1.55;color:#5e716b;margin:12px 0}.legal-note a{color:var(--green)}.checkrow{display:flex;align-items:flex-start;gap:9px;font-size:13px;color:#485e58;line-height:1.5}.checkrow input{margin-top:3px;accent-color:var(--green)}.status{min-height:28px;font-weight:700;margin:12px 0 0}.status.error{color:#a52727}.status.success{color:#176b5a}.test{background:white;border:1px solid var(--stroke);border-radius:21px;padding:35px;box-shadow:0 15px 45px #102f290a}.progress{height:9px;background:#e1e9e4;border-radius:9px;overflow:hidden;margin:14px 0 30px}.progress div{background:var(--bright);height:100%;width:0;transition:width .3s}.choices{display:grid;gap:10px}.choice{border:1px solid var(--stroke);border-radius:12px;padding:15px 19px;background:#fff;text-align:left;color:var(--ink);font-weight:700}.choice:hover,.choice:focus{border-color:var(--green);background:var(--mint)}.test h2{font:800 26px 'Segoe UI',Arial,sans-serif;color:var(--dark);line-height:1.3}.test nav{display:flex;justify-content:space-between;margin-top:26px}.pill{display:inline-flex;background:#dcf0e8;color:#116a56;border-radius:40px;padding:6px 12px;font-weight:800;font-size:12px}.test-result{padding:25px;background:var(--mint);border-radius:16px}.smallprint{font-size:12px;color:#677b74}.stickyphone{display:none}.hpfield{position:absolute;left:-99999px;width:1px;height:1px;opacity:0}.breadcrumbs{font-size:13px;color:#60776f;margin-bottom:12px}.breadcrumbs a{color:var(--green)}@media(max-width:980px){.navlinks{gap:12px}.navlinks a{font-size:12px}.hero-grid{gap:22px}.hero-photo img{height:450px}.cards{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.sidebar{position:static}.photo-note{left:0}}@media(max-width:740px){.wrap{width:min(100% - 34px,580px)}.topline{font-size:11px}.navinner{min-height:69px}.brand b{font-size:21px}.menu-toggle{display:block}.navlinks{display:none;position:absolute;top:69px;left:0;right:0;background:white;padding:18px;box-shadow:0 20px 25px #0002;flex-direction:column;align-items:stretch;gap:0}.navlinks.open{display:flex}.navlinks a{font-size:16px;padding:10px 0}.navlinks .btn{margin-top:9px}.hero-grid,.split{grid-template-columns:1fr}.hero-grid{padding-block:43px 63px;gap:32px}.hero h1{font-size:clamp(35px,9vw,48px);letter-spacing:-1.7px}.hero p.lead{font-size:17px}.hero-photo img{height:350px;border-radius:95px 16px 16px 16px}.photo-note{left:8px;bottom:-15px;padding:12px 15px}.photo-note b{font-size:18px}.actions{flex-direction:column;align-items:stretch}.btn{width:100%;min-height:53px}.hero .actions .btn{width:100%}.trustline{gap:10px;flex-direction:column}section{padding-block:53px}.stats-grid{grid-template-columns:1fr;gap:0}.stat{padding:10px}.stat b{font-size:27px}.cards,.steps,.footer-cols,.formgrid{grid-template-columns:1fr}.card,.step{padding:23px}.pagehero{padding:44px 0 37px}.pagehero h1{letter-spacing:-1px}.sectionhead h2{font-size:30px}.article h2{font-size:25px}.article p,.article li{font-size:16px}.contactband .actions{justify-content:stretch}.footer-cols{gap:26px}.formbox{padding:21px}.field.wide{grid-column:auto}.test{padding:21px}.stickyphone{display:flex;position:fixed;bottom:13px;left:17px;right:17px;z-index:70;background:var(--green);color:white;min-height:50px;border-radius:13px;align-items:center;justify-content:center;box-shadow:0 12px 30px #0004;text-decoration:none;font-weight:800}.footer{padding-bottom:85px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* LEX GENERIS — wydanie z nastawieniem na zaufanie, czytelność i pozytywne emocje. */
html{scroll-padding-top:102px}body{font-size:17px;line-height:1.67}
.navlinks a{font-size:15px}.btn{font-size:16px;min-height:53px}
.hero{background:linear-gradient(115deg,#edf7f1 0%,#f8faf6 68%,#fffaf2 100%)}
.hero-grid{grid-template-columns:1.18fr .82fr;gap:58px;padding-block:58px 70px}
.hero h1{font-size:clamp(38px,4.5vw,59px);line-height:1.14;letter-spacing:-2px;max-width:740px}
.hero h1 em{font-style:normal;color:#13866d}
.hero .lead{font-size:19px;line-height:1.65;max-width:640px}
.hero-calm{font-size:13px;color:#668078;margin:23px 0 22px}
.hero-metrics{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:22px}
.metric{background:#fff;border:1px solid #d8e9df;padding:18px 20px;border-radius:16px;box-shadow:0 6px 21px #264b3b0a}
.metric strong{display:block;color:#117a66;font:800 clamp(24px,2.5vw,33px)/1.1 'Segoe UI',Arial,sans-serif;margin-bottom:7px}
.metric span{display:block;font-weight:700;color:#36534d;font-size:14px;line-height:1.45}
.hero-photo img{object-fit:cover;object-position:center 27%;height:510px;border-radius:24px;box-shadow:none}
.photo-note{left:17px;right:17px;bottom:16px;max-width:none;text-align:center;padding:12px 18px;box-shadow:0 8px 24px #173e3422}
.photo-note b{font-size:15px}.photo-note span{font-size:12px;display:block}
.eyebrow{font-size:13px}
.sectionhead p{font-size:18px}
.card p,.step p{font-size:16px;line-height:1.7}
.card h3{font-size:21px}
.topic-icon{width:52px;height:52px;border-radius:15px;background:#e4f3eb;display:flex;align-items:center;justify-content:center;color:#127d65;font-size:27px;font-weight:800;margin-bottom:20px}
.textlink{font-size:16px}
.field label{font-size:16px}.field input,.field select,.field textarea{font-size:17px;min-height:54px}
.legal-note{font-size:13px}.checkrow{font-size:14px}
.faq summary{font-size:19px}.faq p{font-size:16px}
.footer a{font-size:15px}.footnote,.foot-bottom{font-size:13px}
:focus-visible{outline:3px solid #11a889;outline-offset:3px}
@media(max-width:980px){.hero-grid{gap:30px}.hero h1{font-size:clamp(35px,5vw,49px)}.hero-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:740px){
 body{font-size:17px}.hero-grid{grid-template-columns:minmax(0,1fr);gap:27px;padding-block:35px 54px}
 .hero h1{font-size:clamp(35px,9vw,46px);letter-spacing:-1.4px}.hero .lead{font-size:18px}
 .hero-photo img{height:380px;object-position:center 26%;border-radius:20px}
 .hero-metrics{gap:10px}.metric{padding:13px 12px}.metric strong{font-size:23px}.metric span{font-size:13px}
 .photo-note{left:12px;right:12px;bottom:12px}.photo-note b{font-size:14px}.photo-note span{font-size:11px}
 .card h3{font-size:20px}.card p{font-size:16px}
 .topline{font-size:11px}.navlinks a{font-size:17px}
 .hero-calm{font-size:13px}
}
@media(max-width:360px){.hero-metrics{grid-template-columns:1fr}.metric{padding:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}


/* Topic cards with photos on homepage */
.topic-cards{align-items:stretch}
.topic-card{padding:0;overflow:hidden;display:flex;flex-direction:column}
.topic-card-link{display:block;text-decoration:none}
.topic-photo{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center;display:block}
.topic-body{padding:22px 24px 24px}
.topic-tag{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#e6f3ee;color:#116e5b;font-size:12px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;margin-bottom:12px}
.topic-card h3{margin:0 0 10px}
.topic-card p{margin:0 0 16px}
.topic-card .textlink{display:inline-block}
@media(max-width:740px){
  .topic-body{padding:18px 18px 21px}
  .topic-tag{font-size:11px}
}

/* Pogodne fotografie w sekcji pomocy — lekki kadr i czytelne kafelki */
.topic-photo{aspect-ratio:1.88/1;object-fit:cover;object-position:center center;transition:transform .35s ease}
.topic-card-link{overflow:hidden}
.topic-card-link:hover .topic-photo{transform:scale(1.025)}
.positive-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:30px;padding:25px 30px;border-radius:20px;background:#eaf6ef;border:1px solid #d1eadd}
.positive-cta h3{font:800 clamp(20px,2vw,25px)/1.3 'Segoe UI',Arial,sans-serif;color:#123d32;margin:0 0 7px}
.positive-cta p{font-size:16px;color:#3c6055;margin:0;line-height:1.6}
.positive-cta .btn{flex:0 0 auto}
@media(max-width:740px){.positive-cta{flex-direction:column;align-items:stretch;padding:22px 18px}.positive-cta .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.topic-photo{transition:none}}

/* Aktualizacje projektu — optymalizacja czytelności i dostępności */
.skiplink{position:absolute;z-index:900;top:-90px;left:12px;background:#fff;padding:12px 20px;color:#103b35;font-weight:800;border:3px solid #176b5a;border-radius:10px}.skiplink:focus{top:12px}
.article-banner{margin:0 0 28px;border-radius:20px;overflow:hidden;background:#e8f3ee}.article-banner img{width:100%;height:300px;object-fit:cover;object-position:center 50%}
.official-source{margin:36px 0 5px;padding:18px 20px;background:#edf5f0;border:1px solid #cfe3d7;border-radius:12px;font-size:14px!important;color:#435d53}.official-source a{color:#126e5b;font-weight:750}
.faq-home{background:#f6faf7}.faq-home-items{max-width:850px;margin:auto}.faq-home-items details{background:#fff;border:1px solid #dbece2;border-radius:12px;margin:9px 0;padding:14px 22px}.faq-home-items details[open]{box-shadow:0 9px 27px #0b493c0a}.faq-home-items summary{font-size:19px}.faq-home-items p{font-size:16px;line-height:1.75}
.hero-photo img{object-position:center 22%}
.legal-note{font-size:14px;line-height:1.6}.checkrow{font-size:15px}.smallprint{font-size:13px}
.navlinks a{font-size:15px}.footer .brand b{font-size:22px}
html{overflow-x:clip}body{overflow-x:clip}
@media(max-width:740px){.hero h1{font-size:clamp(36px,10vw,47px)}.hero-photo img{height:350px}.article-banner img{height:215px}.faq-home-items{max-width:100%}.topic-body{padding:22px}.topic-photo{aspect-ratio:1.6;object-fit:cover}.footer .brand b{font-size:23px}}
@media(max-width:740px){.stickyphone{display:none}.stickyphone.is-visible{display:flex}}


/* Dyskretna, ale dostępna stopka informacyjna. */
.footer .footnote{font-size:11.5px;line-height:1.55;color:#bdcfc9}
.footer .foot-bottom{font-size:11px;line-height:1.5;color:#b9cdc5;padding-top:13px;margin-top:25px}
.footer .footer-lowline a{display:inline;font-size:inherit;text-decoration:underline;text-decoration-color:#9bbcaf;text-underline-offset:2px}
.footer .registry-info{margin-top:7px;max-width:100%;font-size:10.5px;color:#a8c0b7}
.footer .registry-info summary{cursor:pointer;display:list-item;width:fit-content;list-style:disclosure-closed;padding:2px 4px 2px 0;border-radius:3px;text-decoration:underline;text-decoration-color:#759b8b;text-underline-offset:2px}
.footer .registry-info[open] summary{list-style:disclosure-open}
.footer .registry-info summary:focus-visible{outline:2px solid #b9e9d9;outline-offset:3px}
.footer .registry-info p{margin:4px 0 0;font-size:10.5px;line-height:1.6;max-width:950px}
@media(max-width:740px){.footer .footnote{font-size:11.5px}.footer .foot-bottom{font-size:11px}.footer .registry-info,.footer .registry-info p{font-size:11px}}

/* Znak firmowy stopki pozostaje dwuwierszowy. */
.footer a.brand{display:flex;flex-direction:column;align-items:flex-start;gap:0}.footer a.brand b{display:block}.footer a.brand small{display:block;margin-top:6px}
