:root { --ink:#0b1633; --ink-soft:#35415f; --blue:#2448b5; --blue-dark:#142b75; --cyan:#3bd4ce; --sky:#eaf2ff; --paper:#f7f9fd; --white:#fff; --line:#dce3f0; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:82px; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,Helvetica,sans-serif; font-size:16px; line-height:1.6; }
a { color:inherit; text-decoration:none; } button,input,select,textarea { font:inherit; } button,a { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid #ffbf47; outline-offset:4px; }
.skip-link { position:fixed; z-index:999; left:1rem; top:-5rem; background:#fff; padding:.75rem 1rem; border-radius:.5rem; font-weight:700; }.skip-link:focus { top:1rem; }
.container { width:min(1180px,calc(100% - 40px)); margin:0 auto; }

.site-header { position:fixed; z-index:100; inset:0 0 auto; height:80px; display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:0 max(22px,calc((100vw - 1180px)/2)); background:rgba(255,255,255,.9); backdrop-filter:blur(18px); border-bottom:1px solid rgba(24,49,110,.09); }
.brand { display:inline-flex; align-items:center; gap:.75rem; }.brand-mark { position:relative; display:grid; place-items:center; width:45px; height:45px; color:#fff; }.brand-mark i,.brand-mark i::before { content:''; position:absolute; width:20px; height:44px; background:var(--blue); border-radius:2px; }.brand-mark i::before { transform:rotate(90deg); }.brand-mark b { position:relative; z-index:2; font:15px Georgia,serif; color:#fff; }.brand-copy { display:flex; flex-direction:column; line-height:1.1; }.brand-copy strong { font-size:1.25rem; letter-spacing:.04em; }.brand-copy small { margin-top:4px; color:#68728b; font-size:.68rem; text-transform:uppercase; letter-spacing:.08em; }
.brand-mark-text { color:#fff; background:var(--blue); border-radius:10px; font-size:.95rem; font-weight:900; letter-spacing:-.03em; }
.brand-copy strong span { color:var(--blue); }
.brand-copy strong i { color:var(--cyan); font-style:normal; }
.main-nav { display:flex; align-items:center; gap:1.5rem; font-size:.91rem; font-weight:700; }.main-nav a { white-space:nowrap; }.main-nav a:not(.nav-cta):hover { color:var(--blue); }.nav-cta { padding:.72rem 1.1rem; color:#fff; background:var(--blue); border-radius:999px; }.menu-button { display:none; border:0; background:transparent; color:var(--ink); }

.hero { position:relative; min-height:100svh; display:grid; grid-template-columns:1.08fr .92fr; align-items:center; padding:130px max(22px,calc((100vw - 1180px)/2)) 100px; overflow:hidden; background:linear-gradient(135deg,#fff 0%,#f8fbff 48%,#eaf2ff 100%); }.hero-grid { position:absolute; inset:0; opacity:.27; background-image:linear-gradient(#a8b9df 1px,transparent 1px),linear-gradient(90deg,#a8b9df 1px,transparent 1px); background-size:64px 64px; mask-image:linear-gradient(to right,transparent,#000 55%,#000); }.hero-orb { position:absolute; border-radius:50%; filter:blur(4px); }.hero-orb-one { width:380px; height:380px; right:6%; top:18%; background:rgba(59,212,206,.18); }.hero-orb-two { width:220px; height:220px; right:30%; bottom:8%; background:rgba(36,72,181,.14); }.hero-content,.hero-visual { position:relative; z-index:2; }
.eyebrow,.section-kicker { display:inline-flex; align-items:center; gap:.45rem; color:var(--blue); font-size:.74rem; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }.eyebrow { padding:.55rem .85rem; border:1px solid #cdd9f3; border-radius:999px; background:rgba(255,255,255,.7); }.hero h1 { margin:1.5rem 0; max-width:760px; font:500 clamp(3.6rem,7vw,7.3rem)/.87 Georgia,'Times New Roman',serif; letter-spacing:-.055em; }.hero h1 em { color:var(--blue); font-weight:500; }.hero-content>p { max-width:660px; color:var(--ink-soft); font-size:clamp(1.05rem,1.7vw,1.25rem); }
.hero-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin:2rem 0 2.6rem; }.button { display:inline-flex; align-items:center; justify-content:center; gap:.7rem; min-height:52px; padding:.82rem 1.3rem; border:1px solid transparent; border-radius:999px; font-weight:800; cursor:pointer; transition:transform .2s,box-shadow .2s,background .2s; }.button:hover { transform:translateY(-2px); }.button-primary { color:#fff; background:var(--blue); box-shadow:0 12px 28px rgba(36,72,181,.22); }.button-ghost { border-color:#bac8e6; background:rgba(255,255,255,.68); }.button-light { color:var(--blue-dark); background:#fff; }
.hero-proof { display:flex; gap:2rem; }.hero-proof div { display:grid; }.hero-proof strong { color:var(--blue); font:2rem/1 Georgia,serif; }.hero-proof span { margin-top:.3rem; color:#667089; font-size:.75rem; }.hero-visual { display:grid; place-items:center; min-height:580px; }.access-portal { position:relative; width:min(520px,42vw); aspect-ratio:1; display:grid; place-items:center; border:1px solid rgba(36,72,181,.2); border-radius:50%; animation:float 6s ease-in-out infinite; }.access-portal::before,.access-portal::after { content:''; position:absolute; border-radius:50%; border:1px solid rgba(36,72,181,.16); }.access-portal::before { inset:10%; border-style:dashed; animation:spin 24s linear infinite; }.access-portal::after { inset:24%; background:rgba(255,255,255,.5); box-shadow:0 30px 80px rgba(20,43,117,.16); }.portal-core { position:relative; z-index:3; width:190px; aspect-ratio:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1rem; text-align:center; font-size:.84rem; font-weight:800; text-transform:uppercase; letter-spacing:.07em; background:#fff; border-radius:50%; box-shadow:0 18px 50px rgba(20,43,117,.15); }.portal-line { position:absolute; z-index:2; height:1px; width:55%; background:var(--cyan); transform-origin:left; }.line-a { transform:rotate(35deg); }.line-b { transform:rotate(155deg); }.portal-label { position:absolute; z-index:4; padding:.45rem .7rem; font-size:.65rem; font-weight:800; letter-spacing:.1em; background:#fff; border:1px solid #ccd7ed; border-radius:999px; }.label-a { top:9%; left:16%; }.label-b { right:-2%; top:50%; }.label-c { bottom:10%; left:4%; }.scroll-cue { position:absolute; z-index:4; left:50%; bottom:25px; display:flex; align-items:center; gap:.5rem; transform:translateX(-50%); color:#64708a; font-size:.75rem; font-weight:700; }
@keyframes spin { to { transform:rotate(360deg); } } @keyframes float { 50% { transform:translateY(-10px); } }

.section { padding:120px 0; }.section-light { background:#fff; }.section-intro h2,.funding h2,.contact h2,.cert-copy h2 { margin:.7rem 0 0; font:500 clamp(2.7rem,5vw,5.2rem)/.98 Georgia,serif; letter-spacing:-.045em; }.split-intro { display:grid; grid-template-columns:1.1fr .9fr; gap:8vw; align-items:end; margin-bottom:4rem; }.split-intro>p,.split-intro>div>p { max-width:560px; color:var(--ink-soft); font-size:1.1rem; }
.partners { border-top:1px solid var(--line); }.partner-row { display:grid; grid-template-columns:55px 84px minmax(260px,.9fr) 1fr; gap:2rem; align-items:center; padding:2rem 0; border-bottom:1px solid var(--line); }.partner-no { align-self:start; color:#8b96ac; font:italic 1rem Georgia,serif; }.partner-monogram { display:grid; place-items:center; width:68px; height:68px; color:#fff; background:var(--blue); border-radius:50%; font-size:.8rem; font-weight:900; }.partner-name small { color:var(--blue); font-size:.72rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.partner-name h3 { margin:.25rem 0 0; font-size:1.15rem; line-height:1.25; }.partner-row p { color:#5d6880; }.team-callout { margin-top:3rem; display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:1.3rem 1.5rem; background:var(--sky); border-radius:18px; }.team-callout>div { display:flex; align-items:center; gap:1rem; }.team-callout svg { color:var(--blue); }.team-callout span { display:grid; color:#5d6880; }.team-callout strong { color:var(--ink); }.team-callout a,.text-link { display:inline-flex; align-items:center; gap:.5rem; color:var(--blue); font-weight:800; }

.expertise { background:var(--paper); }.center-intro { max-width:780px; margin:0 auto 4rem; text-align:center; }.center-intro p { max-width:640px; margin:1.3rem auto; color:var(--ink-soft); }.pillars { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }.pillar { position:relative; min-height:490px; padding:2rem; overflow:hidden; color:#fff; border-radius:24px; }.pillar::after { content:''; position:absolute; width:240px; height:240px; right:-90px; bottom:-100px; border:1px solid rgba(255,255,255,.3); border-radius:50%; box-shadow:0 0 0 35px rgba(255,255,255,.05),0 0 0 70px rgba(255,255,255,.04); }.pillar-a { background:#183a93; }.pillar-b { background:#2455c6; }.pillar-c { background:#176977; }.pillar-icon { display:grid; place-items:center; width:58px; height:58px; margin-bottom:4rem; color:var(--ink); background:#fff; border-radius:50%; }.pillar>span { color:rgba(255,255,255,.7); font-size:.75rem; letter-spacing:.12em; }.pillar h3 { margin:.5rem 0 1rem; font:500 2rem Georgia,serif; }.pillar p { color:rgba(255,255,255,.82); }.pillar ul { position:relative; z-index:2; display:grid; gap:.55rem; padding:0; margin:1.5rem 0 0; list-style:none; font-size:.88rem; }.pillar li { display:flex; align-items:center; gap:.5rem; }.pillar li svg { width:15px; }.training-band { display:grid; grid-template-columns:1.2fr 1fr auto; gap:2rem; align-items:center; margin-top:1rem; padding:2rem; background:#fff; border:1px solid var(--line); border-radius:24px; }.training-title { display:flex; gap:1rem; align-items:center; }.training-title>svg { width:42px; height:42px; color:var(--blue); }.training-title small { color:var(--blue); font-weight:800; letter-spacing:.1em; }.training-title h3 { margin:.2rem 0 0; }.training-list { display:flex; flex-wrap:wrap; gap:.45rem; }.training-list span { padding:.35rem .6rem; font-size:.75rem; border:1px solid var(--line); border-radius:999px; }.training-band>a { display:flex; align-items:center; gap:.5rem; color:var(--blue); font-weight:800; white-space:nowrap; }

.certification { color:#fff; background:var(--ink); overflow:hidden; }.certification-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:8vw; align-items:center; }.section-kicker.light { color:#73e3dc; }.cert-copy h2 em,.funding h2 em { color:#6ee0da; font-weight:500; }.cert-copy>p { color:#b9c4dc; font-size:1.08rem; }.ministry-seal { display:flex; align-items:center; gap:1rem; margin:2rem 0; padding:1rem 0; border-top:1px solid #33405f; border-bottom:1px solid #33405f; }.ministry-seal>svg { width:42px; height:42px; color:#6ee0da; }.ministry-seal span { display:grid; line-height:1.25; }.ministry-seal small { color:#8492ae; font-size:.65rem; letter-spacing:.1em; }.ministry-seal em { margin-top:.25rem; color:#6ee0da; font-size:.76rem; }.process { position:relative; }.process::before { content:''; position:absolute; left:31px; top:32px; bottom:32px; width:1px; background:linear-gradient(#6ee0da,#33405f); }.process-step { position:relative; display:grid; grid-template-columns:64px 1fr; gap:1.3rem; padding:1.5rem 0; }.process-step>span { position:relative; z-index:2; display:grid; place-items:center; width:64px; height:64px; color:#6ee0da; background:var(--ink); border:1px solid #42506d; border-radius:50%; font-size:.78rem; font-weight:800; }.process-step h3 { margin:0; font-size:1.2rem; }.process-step p { margin:.35rem 0 0; color:#9eabc4; }

.registry { padding-top:80px; padding-bottom:80px; background:linear-gradient(var(--ink) 0 50%,#fff 50%); }.registry-card { display:grid; grid-template-columns:.8fr 1.2fr; gap:4rem; align-items:center; padding:3rem; background:#f2f6ff; border-radius:28px; box-shadow:0 24px 70px rgba(8,22,54,.18); }.registry-copy h2 { margin:.5rem 0; font:500 2.3rem/1.05 Georgia,serif; }.registry-copy p { color:var(--ink-soft); }.fake-search { display:flex; justify-content:space-between; align-items:center; padding:.7rem .7rem .7rem 1rem; color:#8791a7; background:#fff; border:1px solid var(--line); border-radius:12px; font-size:.85rem; }.fake-search span { padding:.55rem .8rem; color:#fff; background:var(--blue); border-radius:8px; font-weight:700; }.certificate-row { display:flex; align-items:center; gap:1rem; margin-top:.75rem; padding:1rem; background:#fff; border-radius:12px; }.certificate-row>svg { color:var(--blue); }.certificate-row div { display:grid; flex:1; }.certificate-row small { color:#7b869e; }.certificate-row b { padding:.3rem .55rem; color:#16715f; background:#e4f8f2; border-radius:999px; font-size:.65rem; }

.news-heading>div:last-child { align-self:end; }.news-heading .text-link { margin-top:1rem; }.news-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; }.news-card { overflow:hidden; background:#fff; border:1px solid var(--line); border-radius:22px; transition:transform .25s,box-shadow .25s; }.news-card:hover { transform:translateY(-5px); box-shadow:0 20px 40px rgba(11,22,51,.1); }.news-art { height:220px; position:relative; display:flex; align-items:flex-start; justify-content:space-between; padding:1.2rem; overflow:hidden; }.news-art::after { content:''; position:absolute; width:220px; height:220px; right:-45px; bottom:-80px; border:1px solid rgba(255,255,255,.5); border-radius:50%; box-shadow:0 0 0 35px rgba(255,255,255,.09),0 0 0 70px rgba(255,255,255,.06); }.news-art.blue { background:#274bb3; }.news-art.violet { background:#5b3dad; }.news-art.cyan { background:#147c86; }.news-art span { padding:.4rem .65rem; color:#fff; background:rgba(0,0,0,.18); border-radius:999px; font-size:.68rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }.news-art svg { width:56px; height:56px; color:rgba(255,255,255,.7); }.news-body { padding:1.5rem; }.news-body time { color:#7c879d; font-size:.72rem; font-weight:700; }.news-body h3 { margin:.5rem 0; font-size:1.2rem; line-height:1.25; }.news-body p { color:#667087; font-size:.92rem; }.news-body a { display:inline-flex; align-items:center; gap:.4rem; color:var(--blue); font-size:.85rem; font-weight:800; }

.funding { color:#fff; background:#2451bd; }.funding-grid { display:grid; grid-template-columns:1fr 1fr; gap:9vw; align-items:center; }.funding .section-kicker { color:#8ff1ea; }.funding-copy>p { font-size:1.15rem; color:#dfe8ff; }.funding-copy ul { display:grid; gap:.7rem; padding:0; margin:2rem 0; list-style:none; }.funding-copy li { display:flex; align-items:center; gap:.8rem; }.funding-copy li svg { color:#8ff1ea; }.funding .button-primary { color:var(--blue); background:#fff; box-shadow:none; }
.contact { color:#fff; background:#09142f; }.contact-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; }.contact-copy>p { color:#aebbd4; font-size:1.08rem; }.contact-details { display:grid; gap:1rem; margin-top:2.3rem; }.contact-details a,.contact-details>div { display:flex; gap:.8rem; align-items:center; }.contact-details svg { width:20px; color:#6ee0da; }.contact-details span { display:grid; }.contact-details small { color:#71809f; font-size:.63rem; font-weight:800; letter-spacing:.1em; }.contact-form-wrap { padding:2rem; color:var(--ink); background:#fff; border-radius:24px; }.contact-form { display:grid; gap:1rem; }.form-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }.contact-form label:not(.consent) { display:grid; gap:.35rem; font-size:.78rem; font-weight:800; }.contact-form input,.contact-form select,.contact-form textarea { width:100%; padding:.75rem .85rem; color:var(--ink); background:#f7f9fd; border:1px solid #d8e0ee; border-radius:9px; }.contact-form textarea { resize:vertical; }.consent { display:flex; align-items:flex-start; gap:.6rem; color:#677188; font-size:.78rem; }.consent input { width:18px; height:18px; flex:0 0 auto; }.contact-form .button { justify-self:start; }.form-note { color:#7a8599; }
.footer { color:#adb9d0; background:#061027; }.footer-main { display:grid; grid-template-columns:2fr 1fr 1.2fr; gap:4rem; padding-top:4rem; padding-bottom:3rem; }.footer .brand-copy strong { color:#fff; }.footer-main>div { display:flex; flex-direction:column; align-items:flex-start; gap:.55rem; }.footer-main p { max-width:300px; }.footer-main strong { margin-bottom:.5rem; color:#fff; }.footer-main a { font-size:.86rem; }.footer-main a:hover { color:#fff; }.footer-bottom { display:flex; justify-content:space-between; gap:1rem; padding-top:1.2rem; padding-bottom:1.2rem; border-top:1px solid #1d2942; font-size:.75rem; }

.reveal { opacity:0; transform:translateY(24px); transition:opacity .7s ease,transform .7s ease; }.reveal.visible { opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation:none!important; transition:none!important; } .reveal { opacity:1; transform:none; } }
@media (max-width:1000px) { .main-nav { position:fixed; inset:80px 0 auto; display:none; flex-direction:column; align-items:stretch; gap:0; padding:1rem 22px 1.5rem; background:#fff; border-bottom:1px solid var(--line); box-shadow:0 20px 30px rgba(10,20,50,.1); }.main-nav.open { display:flex; }.main-nav a { padding:.8rem 0; }.nav-cta { margin-top:.5rem; text-align:center; }.menu-button { display:block; }.hero { grid-template-columns:1fr; padding-top:140px; }.hero-visual { min-height:430px; }.access-portal { width:min(480px,78vw); }.scroll-cue { display:none; }.pillars { grid-template-columns:1fr; }.pillar { min-height:auto; }.pillar-icon { margin-bottom:2rem; }.training-band { grid-template-columns:1fr; }.certification-grid,.funding-grid,.contact-grid { grid-template-columns:1fr; }.registry-card { grid-template-columns:1fr; gap:2rem; } }
@media (max-width:720px) { .container { width:min(100% - 28px,1180px); }.site-header { height:72px; padding:0 14px; }.brand-copy small { display:none; }.main-nav { top:72px; }.hero { padding:118px 18px 70px; }.hero h1 { font-size:clamp(3.2rem,16vw,5.5rem); }.hero-content>p { font-size:1rem; }.hero-proof { display:grid; grid-template-columns:repeat(3,1fr); gap:.6rem; }.hero-proof strong { font-size:1.55rem; }.hero-visual { min-height:340px; }.portal-core { width:140px; }.portal-label { font-size:.52rem; }.label-b { right:-8%; }.section { padding:80px 0; }.split-intro { grid-template-columns:1fr; gap:1.4rem; margin-bottom:2.5rem; }.section-intro h2,.funding h2,.contact h2,.cert-copy h2 { font-size:clamp(2.6rem,13vw,4rem); }.partner-row { grid-template-columns:38px 60px 1fr; gap:1rem; }.partner-monogram { width:54px; height:54px; }.partner-row p { grid-column:2/4; margin-top:0; }.team-callout { align-items:flex-start; flex-direction:column; }.training-band { padding:1.4rem; }.registry-card { padding:1.5rem; }.fake-search { align-items:stretch; flex-direction:column; gap:.7rem; }.fake-search span { text-align:center; }.news-grid { grid-template-columns:1fr; }.news-art { height:180px; }.form-row { grid-template-columns:1fr; }.contact-form-wrap { padding:1.2rem; }.footer-main { grid-template-columns:1fr; gap:2rem; }.footer-bottom { flex-direction:column; } }

.subpage { min-height:100vh; background:#f7f9fd; }.sub-header { height:76px; display:flex; align-items:center; justify-content:space-between; padding:0 max(20px,calc((100vw - 1100px)/2)); background:#fff; border-bottom:1px solid var(--line); }.sub-brand { display:flex; align-items:center; gap:.65rem; font-size:1.15rem; }.sub-brand span { display:grid; place-items:center; width:36px; height:36px; color:#fff; background:var(--blue); }.back-link { display:flex; align-items:center; gap:.45rem; color:var(--blue); font-weight:800; font-size:.85rem; }.sub-hero { padding:90px 20px; color:#fff; background:radial-gradient(circle at 80% 20%,#2f5ac9 0,transparent 35%),var(--ink); }.sub-hero-inner { width:min(1100px,100%); margin:0 auto; }.sub-hero h1 { max-width:860px; margin:.8rem 0 1rem; font:500 clamp(3.2rem,7vw,6.5rem)/.92 Georgia,serif; letter-spacing:-.05em; }.sub-hero p { max-width:700px; color:#c1cce1; font-size:1.15rem; }.sub-content { width:min(1100px,calc(100% - 40px)); margin:0 auto; padding:80px 0 100px; }.sub-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; margin-bottom:2rem; }.sub-grid article { position:relative; min-height:260px; padding:2rem; background:#fff; border:1px solid var(--line); border-radius:20px; }.sub-grid article>span { position:absolute; right:1.5rem; top:1.2rem; color:#aab4c7; font:italic .85rem Georgia,serif; }.sub-grid article>svg { color:var(--blue); }.sub-grid h2 { margin:1.2rem 0 .5rem; font:500 1.7rem Georgia,serif; }.sub-grid p { color:#5f6a82; }.sub-note { margin:2rem 0; padding:1.2rem 1.4rem; color:#23468f; background:#e9f1ff; border-left:4px solid var(--blue); border-radius:0 12px 12px 0; }.sub-content>.button { margin-top:1rem; }
@media (max-width:720px) { .sub-hero { padding:70px 18px; }.sub-grid { grid-template-columns:1fr; }.sub-content { width:min(100% - 28px,1100px); padding:55px 0 80px; }.back-link { font-size:0; }.back-link svg { width:22px; height:22px; } }

/* Panel i tryby dostępności */
.a11y-panel { position:fixed; z-index:300; right:18px; bottom:18px; font-family:Arial,Helvetica,sans-serif; }.a11y-toggle { display:flex; align-items:center; gap:.55rem; min-height:48px; padding:.7rem 1rem; color:#fff; background:#142b75; border:2px solid #fff; border-radius:999px; box-shadow:0 8px 28px rgba(5,15,40,.3); font-weight:800; cursor:pointer; }.a11y-options { position:absolute; right:0; bottom:58px; width:min(290px,calc(100vw - 36px)); padding:1rem; color:#0b1633; background:#fff; border:2px solid #142b75; border-radius:16px; box-shadow:0 18px 50px rgba(5,15,40,.25); }.a11y-options strong { display:block; margin-bottom:.7rem; }.a11y-options button { width:100%; min-height:44px; margin-top:.45rem; padding:.55rem .7rem; text-align:left; color:#0b1633; background:#f2f6ff; border:1px solid #b8c7e8; border-radius:8px; font-weight:700; cursor:pointer; }.a11y-options button[aria-pressed="true"] { color:#fff; background:#142b75; }.a11y-text-controls { display:grid; grid-template-columns:repeat(3,1fr); gap:.4rem; }.a11y-text-controls button { text-align:center; }.a11y-status { display:block; margin-top:.5rem; font-size:.75rem; }
html[data-text-size="1"] { font-size:118.75%; } html[data-text-size="2"] { font-size:137.5%; } html.a11y-readable body,html.a11y-readable h1,html.a11y-readable h2,html.a11y-readable h3,html.a11y-readable em { font-family:Arial,Helvetica,sans-serif!important; letter-spacing:.01em!important; } html.a11y-motion { scroll-behavior:auto; } html.a11y-motion *,html.a11y-motion *::before,html.a11y-motion *::after { animation:none!important; transition:none!important; } html.a11y-motion .reveal { opacity:1!important; transform:none!important; }
html.a11y-contrast body { color:#fff; background:#000; } html.a11y-contrast .site-header,html.a11y-contrast .section-light,html.a11y-contrast .expertise,html.a11y-contrast .registry,html.a11y-contrast .subpage,html.a11y-contrast .sub-header,html.a11y-contrast .sub-content { color:#fff; background:#000!important; } html.a11y-contrast .hero,html.a11y-contrast .registry-card,html.a11y-contrast .team-callout,html.a11y-contrast .training-band,html.a11y-contrast .news-card,html.a11y-contrast .sub-grid article { color:#fff; background:#000!important; border:2px solid #ffeb00; } html.a11y-contrast p,html.a11y-contrast small,html.a11y-contrast span { color:inherit; } html.a11y-contrast a:not(.button):not(.nav-cta),html.a11y-contrast .section-kicker,html.a11y-contrast h1 em { color:#ffeb00!important; text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:3px; } html.a11y-contrast .main-nav { background:#000; } html.a11y-contrast .button,html.a11y-contrast .nav-cta,html.a11y-contrast .a11y-toggle { color:#000; background:#ffeb00; border:2px solid #fff; box-shadow:none; } html.a11y-contrast input,html.a11y-contrast select,html.a11y-contrast textarea,html.a11y-contrast .contact-form-wrap { color:#fff; background:#000; border:2px solid #ffeb00; } html.a11y-contrast .a11y-options { color:#fff; background:#000; border-color:#ffeb00; } html.a11y-contrast .a11y-options button { color:#fff; background:#000; border-color:#fff; } html.a11y-contrast .a11y-options button[aria-pressed="true"] { color:#000; background:#ffeb00; }
@media (prefers-contrast:more) { :focus-visible { outline-width:4px; } .button,.nav-cta,input,select,textarea { border-width:2px; } }
@media (max-width:600px) { .a11y-panel { right:10px; bottom:10px; }.a11y-toggle-label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }.a11y-toggle { width:50px; justify-content:center; padding:.5rem; } }

/* Prosta typografia i docelowe położenie panelu */
body,button,input,select,textarea,h1,h2,h3,h4,h5,h6,em,strong,.hero h1,.section-intro h2,.funding h2,.contact h2,.cert-copy h2,.pillar h3,.registry-copy h2,.sub-hero h1,.sub-grid h2,.partner-no,.sub-grid article>span { font-family:Arial,Helvetica,sans-serif!important; }
h1,h2,h3,h4,h5,h6 { font-style:normal!important; font-weight:700!important; letter-spacing:-.02em!important; }
em,.partner-no,.sub-grid article>span { font-style:normal!important; }
.hero h1 { font-size:clamp(3rem,5.5vw,5.7rem); line-height:1; }
.section-intro h2,.funding h2,.contact h2,.cert-copy h2 { font-size:clamp(2.35rem,4.2vw,4.3rem); line-height:1.08; }
.sub-hero h1 { font-size:clamp(2.8rem,6vw,5.4rem); line-height:1.04; }
.pillar h3 { font-size:1.8rem; }.registry-copy h2 { font-size:2.15rem; line-height:1.12; }.sub-grid h2 { font-size:1.55rem; line-height:1.2; }
.a11y-panel { top:112px; bottom:auto; right:18px; }.a11y-options { top:58px; bottom:auto; }
/* Filtrujemy treść strony, a nie element body. Dzięki temu panel pozostaje
   przypięty do okna również po włączeniu skali szarości lub inwersji. */
html.a11y-grayscale body > :not(.a11y-panel) { filter:grayscale(1); }
html.a11y-inverted body { background:#fff; }
html.a11y-inverted body > :not(.a11y-panel) { filter:invert(1) hue-rotate(180deg); }
@media (max-width:600px) { .a11y-panel { top:86px; right:10px; bottom:auto; }.a11y-toggle-label { position:static; width:auto; height:auto; overflow:visible; clip-path:none; }.a11y-toggle { width:auto; min-width:50px; } }

/* Większa typografia użytkowa — czytelność ponad dekoracyjność */
body { font-size:18px; line-height:1.7; }
.main-nav { font-size:1rem; gap:1.25rem; }
.brand-copy small,.eyebrow,.section-kicker,.partner-name small,.training-title small,.ministry-seal small,.contact-details small,.news-body time,.news-art span,.pillar>span,.form-note { font-size:1rem!important; letter-spacing:.015em!important; }
.hero-content>p,.split-intro>p,.split-intro>div>p,.center-intro p,.cert-copy>p,.funding-copy>p,.contact-copy>p,.sub-hero p { font-size:1.15rem; line-height:1.7; }
.hero-proof span { font-size:.95rem; line-height:1.4; }
.partner-row p,.pillar p,.process-step p,.registry-copy p,.news-body p,.sub-grid p,.footer-main p { font-size:1rem; line-height:1.65; }
.partner-name h3,.process-step h3,.news-body h3,.training-title h3 { font-size:1.25rem; line-height:1.35; }
.pillar ul,.news-body a,.footer-main a,.back-link,.consent { font-size:1rem; }
.training-list span { font-size:.95rem; padding:.45rem .7rem; }
.contact-form label:not(.consent) { font-size:1rem; }
.contact-form input,.contact-form select,.contact-form textarea { min-height:50px; font-size:1rem; }
.form-note { display:block; line-height:1.45; }
.footer-bottom { font-size:.9rem; }
.a11y-options { font-size:1rem; }.a11y-status { font-size:.9rem; }
@media (max-width:720px) {
  body { font-size:17px; }
  .hero-proof { grid-template-columns:1fr; }
  .hero-proof span { font-size:1rem; }
  .brand-copy strong { font-size:1.2rem; }
  .eyebrow { line-height:1.4; }
}
