@font-face{font-family:"Inter"; font-style:normal; font-weight:100 900; font-display:swap;
  src:url("../font/inter/inter-var.woff2") format("woff2")}
@font-face{font-family:"Inter"; font-style:italic; font-weight:100 900; font-display:swap;
  src:url("../font/inter/inter-var-italic.woff2") format("woff2")}
@font-face{font-family:"Inter"; font-style:normal; font-weight:100 900; font-display:swap;
  src:url("../font/inter/inter-var-cyrillic-greek.woff2") format("woff2"); unicode-range:U+0370-03FF, U+1F00-1FFF, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:"Inter"; font-style:italic; font-weight:100 900; font-display:swap;
  src:url("../font/inter/inter-var-italic-cyrillic-greek.woff2") format("woff2"); unicode-range:U+0370-03FF, U+1F00-1FFF, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
:root{
  --navy:#1B2845; --navy-deep:#131d33;
  --orange:#E0772E; --orange-deep:#C9651F; --orange-2:#EC8B3F;
  --peach:#FBE3CE; --peach-deep:#F6C9A0;
  --cream:#FDF6EE; --ink:#2C2A33; --muted:#7E7567;
  --line:#F0E3D4; --card:#FFFFFF; --content:1240px; --radius:18px;
  --shadow:0 1px 2px rgba(var(--warm-rgb),.05), 0 14px 34px rgba(176,104,40,.12);
  --bar1:#C05A33; --bar2:#9F3F20; --bar-solid:#B04F2A; --act-bg:rgba(0,0,0,.20);
  --page-bg:var(--cream); --header-bg:var(--cream); --hover-bg:#FFFBF6; --tint:#FFF3E6;
  --theme-color:#FDF6EE;
  --warm-rgb:60,40,20; --shade-rgb:38,20,10; --accent-rgb:224,119,46;
  --dark:var(--navy); --dark-deep:var(--navy-deep);
  --on-dark:#D9DEE9; --on-dark-soft:#AEB6C6; --on-dark-muted:#98A1B4; --on-dark-light:#C6CEDC;
  --fs-display:36px;
  --fs-title-1:44px;
  --fs-title-2:28px;
  --fs-title-3:22px;
  --fs-content-h2:25px;
  --fs-title-4:18px;
  --fs-body:16px;
  --fs-nav:15px;
  --fs-meta:14px;
  --fs-label:13px;
  --fs-micro:12px;
}
@media (max-width:768px){ :root{ --fs-title-1:30px } }
*{box-sizing:border-box}
::selection{background:var(--peach-deep); color:var(--navy)}
p, li, h1, h2, h3, figcaption, blockquote{text-wrap:pretty}
html.mourning-full{filter:grayscale(1)}
.kir{flex:none; width:18px; height:24px}
@media (max-width:640px){ .kir{width:14px; height:19px} }
button, input, select, textarea{font-family:inherit; font-size:inherit; line-height:inherit}
html{scroll-behavior:smooth; overflow-x:clip}
body{margin:0; background:var(--page-bg); color:var(--ink); font-family:"Inter",system-ui,sans-serif; line-height:1.6; -webkit-font-smoothing:antialiased; overflow-x:clip; display:flex; flex-direction:column; min-height:100vh}
#page{position:relative; flex:1}
.wrap{max-width:var(--content); margin:0 auto; padding:0 24px}
h1,h2,h3{color:var(--navy); letter-spacing:-.02em; line-height:1.12; margin:0; font-weight:800}
a{color:inherit}
.skip{position:absolute; left:-9999px; top:8px; z-index:200; background:var(--navy); color:#fff; padding:8px 14px; border-radius:8px; font-weight:700; font-size:var(--fs-meta); text-decoration:none; box-shadow:var(--shadow)}
h1:focus{outline:none}
.skip:focus{left:8px}
header.site{background:var(--header-bg); border-bottom:1px solid var(--line)}
.topbar{display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 24px; max-width:var(--content); margin:0 auto}
.brand{display:flex; align-items:center; gap:12px; line-height:1.2; min-width:0; text-decoration:none}
.brand-mark{flex:none; display:block; height:48px; width:auto}
.brand-mark.logo{max-width:160px; object-fit:contain}
@media (max-width:640px){ .brand{gap:8px} .brand-mark{height:36px} .brand-mark.logo{max-width:110px} }
.brand-text{display:flex; flex-direction:column; margin:0; font-size:inherit; line-height:1.2; letter-spacing:0}
.brand-name{color:var(--navy); font-size:var(--fs-title-4); font-weight:900; letter-spacing:-.01em}
.brand-sub{color:var(--muted); font-size:var(--fs-meta); font-weight:400}
.top-actions{display:flex; align-items:center; gap:10px}
.topcall{display:flex; align-items:center; gap:8px; font-weight:800; color:var(--navy); text-decoration:none; white-space:nowrap}
.topcall .ic{width:34px;height:34px;border-radius:50%;background:var(--peach);display:grid;place-items:center;color:var(--orange-deep)}
.callbtn{display:none; width:44px;height:44px;border-radius:12px;background:var(--peach);color:var(--orange-deep);place-items:center;text-decoration:none;font-size:var(--fs-title-4)}
.burger{display:inline-flex; align-items:center; gap:10px; font-family:inherit; font-size:var(--fs-body); font-weight:800; color:#fff; background:transparent; border:0; padding:15px 4px; cursor:pointer; text-shadow:0 1px 2px rgba(0,0,0,.16)}
.burger .ham{display:block; width:22px; height:16px}
.burger .ham line{stroke:#fff; stroke-width:1.7; stroke-linecap:round}
.menubar{display:none; max-width:var(--content); margin:0 auto; padding:0 24px}
nav.main{background:var(--bar-solid); background-image:var(--nav-rows, none); position:relative}
nav.main > ul{list-style:none; display:flex; gap:4px; justify-content:center; flex-wrap:wrap; margin:0 auto; padding:0 24px; max-width:var(--content)}
nav.main > ul > li{position:relative; min-width:0}
nav.main > ul > li > a{display:block; position:relative; color:#fff; text-decoration:none; font-weight:700; font-size:var(--fs-nav); padding:16px 18px 19px; overflow-wrap:anywhere; text-shadow:0 1px 2px rgba(0,0,0,.16); transition:background .15s ease}
nav.main > ul.is-tight{gap:0}
nav.main > ul.is-tight > li > a{padding-left:12px; padding-right:12px}
nav.main > ul > li > a.is-active{background:var(--bar2); border-radius:12px}
nav.main > ul > li:hover > a, nav.main > ul > li:focus-within > a{background:var(--bar2); border-radius:12px 12px 0 0}
nav.main > ul:hover > li:not(:hover) > a.is-active, nav.main > ul:focus-within > li:not(:focus-within) > a.is-active{background:transparent; border-radius:12px}
nav.main > ul > li:hover > a.is-active, nav.main > ul > li:focus-within > a.is-active{background:var(--bar2); border-radius:12px 12px 0 0}
nav.main > ul > li:not(:has(.sub)):hover > a, nav.main > ul > li:not(:has(.sub)):focus-within > a{border-radius:12px}
nav.main .sub{margin:0; padding:8px; position:absolute; left:0; top:100%; min-width:290px; background:#fff; border:1px solid var(--line); border-radius:0 0 14px 14px; box-shadow:0 14px 34px rgba(var(--warm-rgb),.18); z-index:50; opacity:0; visibility:hidden; transform:translateY(-6px); transition:opacity .16s ease, transform .16s ease, visibility .16s}
nav.main .sub ul{list-style:none; margin:0; padding:0}
nav.main > ul > li:hover .sub, nav.main > ul > li:focus-within .sub{opacity:1; visibility:visible; transform:translateY(0)}
nav.main .sub a{display:block; padding:10px 14px; color:var(--navy); text-decoration:none; font-weight:600; font-size:var(--fs-nav); border-radius:9px; line-height:1.35}
nav.main .sub a:hover{background:var(--peach); color:var(--orange-deep)}
nav.main .sub a.is-active{background:var(--orange); color:#fff}
nav.main .sub.cols-2{width:calc(2 * 270px + 16px)}
nav.main .sub.cols-3{width:calc(3 * 270px + 16px)}
nav.main .sub.cols-4{width:calc(4 * 270px + 16px)}
nav.main .sub.cols-2 ul{column-count:2}
nav.main .sub.cols-3 ul{column-count:3}
nav.main .sub.cols-4 ul{column-count:4}
nav.main .sub[class*="kol-"]:not(.cols-1){padding:14px 16px 16px}
nav.main .sub[class*="kol-"]:not(.cols-1) ul{column-gap:14px}
nav.main .sub li{break-inside:avoid}
nav.main > ul > li.from-right .sub{left:auto; right:0; border-radius:0 0 14px 14px}
.mobile-panel{overflow:hidden; max-height:0; background:#fff; transition:max-height .35s ease}
.mobile-panel.open{max-height:min(76vh, 1200px); overflow-y:auto; overscroll-behavior:contain; box-shadow:inset 0 1px 0 var(--line)}
.mobile-panel ul{list-style:none; margin:0; padding:0}
.mobile-panel > ul{padding:8px 10px}
.mitem + .mitem{border-top:1px solid var(--line)}
.mrow{display:flex; align-items:stretch; gap:6px}
.mrow .mlink{flex:1; min-width:0; display:block; padding:14px 12px; color:var(--navy); text-decoration:none; font-weight:800; border-radius:10px}
.mrow .mlink:hover{background:var(--peach)}
.mrow .mlink.is-active{background:var(--orange); color:#fff}
.mtog{flex:none; width:48px; border:0; background:transparent; color:var(--orange-deep); cursor:pointer; border-radius:10px; display:grid; place-items:center}
.mtog:hover{background:var(--peach)}
.mtog svg{width:18px; height:18px; transition:transform .2s ease}
.mitem.is-open > .mrow .mtog svg{transform:rotate(180deg)}
.sr{position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0}
.msub{margin:0 0 8px 14px; padding-left:10px; border-left:2px solid var(--peach-deep)}
.msub a{display:block; padding:11px 12px; color:var(--muted); text-decoration:none; font-weight:600; font-size:var(--fs-nav); border-radius:9px; line-height:1.35}
.msub a:hover{background:var(--peach); color:var(--orange-deep)}
.msub a.is-active{background:var(--orange); color:#fff}
.hero-zone{padding:54px 0 10px}
.hero{position:relative; width:100%; margin:0 auto; border-radius:var(--radius); overflow:hidden; background:var(--dark-deep); height:310px; box-shadow:var(--shadow)}
.slide{position:absolute; inset:0; opacity:0; transition:opacity .5s ease; pointer-events:none}
.slide.is-on{opacity:1; pointer-events:auto}
.slide img{width:100%; height:100%; object-fit:cover; object-position:center 40%; display:block}
.slide::after{content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(var(--shade-rgb),.80) 0%, rgba(var(--shade-rgb),.40) 46%, rgba(var(--shade-rgb),0) 76%)}
.slide .cap{position:absolute; left:0; bottom:0; padding:clamp(20px,4vw,40px); color:#fff; max-width:62%; z-index:2; pointer-events:none}
.slide .cap small{font-weight:800; letter-spacing:.1em; text-transform:uppercase; font-size:var(--fs-micro); color:var(--peach-deep)}
.slide .cap h2{color:#fff; font-size:var(--fs-display); margin:.25em 0 .15em; font-weight:900}
.slide .cap p{margin:0; opacity:.92; font-size:var(--fs-body)}
.slide .go{position:absolute; inset:0; z-index:1; text-indent:-9999px; overflow:hidden}
.slide .go:focus-visible{outline:3px solid #fff; outline-offset:-6px; border-radius:var(--radius)}
.arrows{position:absolute; inset:0; display:flex; align-items:center; justify-content:space-between; padding:0 14px; z-index:3; pointer-events:none}
.arrows button{pointer-events:auto; width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.92);color:var(--orange-deep);font-size:var(--fs-title-4);cursor:pointer;box-shadow:var(--shadow);display:grid;place-items:center}
.dots{position:absolute; right:18px; bottom:18px; display:flex; gap:8px; z-index:3}
.dots button{width:10px;height:10px;border-radius:50%;border:0;background:rgba(255,255,255,.5);cursor:pointer;padding:0}
.dots button.is-on{background:var(--orange-2); width:26px; border-radius:6px}
.hero.no-controls .slide .cap{padding-bottom:28px}
.slide{visibility:hidden; transition:opacity .5s ease, visibility 0s linear .5s}
.slide.is-on{visibility:visible; transition:opacity .5s ease}
.hero-controls{display:flex; justify-content:flex-end; align-items:center; gap:10px; margin-top:12px}
.hero-controls[hidden]{display:none}
.hero-controls button{display:inline-flex; align-items:center; justify-content:center; gap:8px; height:42px; min-width:42px; padding:0 12px; border:1px solid var(--peach-deep); border-radius:21px; background:var(--card); color:var(--navy); font:inherit; font-size:var(--fs-meta); font-weight:700; cursor:pointer; transition:background .18s ease}
.hero-controls .hc-prev, .hero-controls .hc-next{padding:0}
.hero-controls .hc-play{padding:0 16px 0 14px}
.hero-controls button:hover{background:var(--peach)}
.hero-controls button:focus-visible{outline:3px solid var(--orange); outline-offset:2px}
.hero-controls .i-play, .hero-controls .is-paused .i-pause, .hero-controls .t-play, .hero-controls .is-paused .t-pause{display:none}
.hero-controls .is-paused .i-play{display:inline-flex}
.hero-controls .is-paused .t-play{display:inline}
.hero-controls .i-pause{display:inline-flex}
.dots button:focus-visible{outline:2px solid #fff; outline-offset:2px}
@media (prefers-reduced-motion: reduce){
  .slide, .slide.is-on{transition:none}
}
.skroty{display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:26px}
.skrot{display:flex; align-items:center; gap:14px; background:var(--card); border:1px solid var(--line); border-radius:14px; padding:18px 20px; text-decoration:none; transition:transform .18s ease, box-shadow .18s ease}
.skrot:hover{transform:translateY(-3px); box-shadow:var(--shadow)}
.skrot .ic{flex:none; width:44px; height:44px; border-radius:12px; background:var(--peach); color:var(--orange-deep); display:grid; place-items:center; font-size:var(--fs-title-3)}
.skrot b{display:block; color:var(--navy); font-weight:800; font-size:var(--fs-body); line-height:1.25}
.skrot span{display:block; color:var(--muted); font-size:var(--fs-meta); margin-top:2px}
section{padding:56px 0}
#aktualnosci{padding-top:18px}
.sec-head{display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:28px; flex-wrap:wrap}
.sec-head h2{font-size:var(--fs-title-2)}
.content .sec-head h2{margin-top:0}
.more{color:var(--orange-deep); font-weight:800; text-decoration:none; white-space:nowrap}
.more:hover{text-decoration:underline}
.news{display:grid; grid-template-columns:repeat(3,1fr); gap:24px}
.post{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; display:flex; flex-direction:column; text-decoration:none; transition:transform .18s ease, box-shadow .18s ease}
.post:hover{transform:translateY(-4px); box-shadow:var(--shadow)}
.post .thumb{aspect-ratio:16/10; overflow:hidden; background:var(--peach)}
.post .thumb img{width:100%;height:100%;object-fit:cover;display:block}
.post .body{padding:20px 20px 22px; display:flex; flex-direction:column; flex:1}
.post .date{font-size:var(--fs-label); font-weight:800; color:var(--orange-deep); letter-spacing:.03em}
.post .kat{display:inline; font-size:var(--fs-label); font-weight:600; color:var(--muted); margin-left:8px}
.post .kat::before{content:"· "; color:var(--peach-deep)}
.post h3{font-size:var(--fs-title-4); margin:.4em 0 .45em; color:var(--navy); font-weight:800; line-height:1.25}
.post p{margin:0 0 14px; color:var(--muted); font-size:var(--fs-nav); flex:1}
.post .read{font-weight:800; color:var(--navy); font-size:var(--fs-nav)}
.post:hover .read{color:var(--orange-deep)}
.block-stats{margin-top:44px}
.block-stats > h2{margin:0 0 14px}
.liczby{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:34px; display:grid; grid-template-columns:repeat(auto-fit, minmax(150px, 1fr)); gap:24px; text-align:center}
.liczby div b{display:block; font-size:var(--fs-display); font-weight:900; color:var(--orange-deep); line-height:1}
.liczby div span{display:block; color:var(--muted); font-size:var(--fs-meta); margin-top:6px}
.crumbs{padding:18px 0 0; font-size:var(--fs-meta); color:var(--muted)}
.crumbs a{color:var(--muted); text-decoration:none}
.crumbs a:hover{color:var(--orange-deep)}
.crumbs .sep{margin:0 8px; color:var(--peach-deep)}
.crumbs .cur{color:var(--navy); font-weight:600}
.crumbs--pills{display:flex; flex-wrap:wrap; align-items:center; gap:6px 0; line-height:1}
.crumbs--pills a, .crumbs--pills .cur{display:inline-flex; align-items:center; height:28px; padding:0 12px; border-radius:999px; font-weight:600; white-space:nowrap}
.crumbs--pills a{border:1px solid var(--line); background:var(--card); color:var(--muted); transition:border-color .15s, color .15s}
.crumbs--pills a:hover{border-color:var(--peach-deep); color:var(--orange-deep)}
.crumbs--pills a:focus-visible{outline:2px solid var(--orange-deep); outline-offset:2px}
.crumbs--pills .cur{background:var(--peach); color:var(--navy); max-width:100%; overflow:hidden; text-overflow:ellipsis; display:inline-block; line-height:28px}
.crumbs--pills .sep{margin:0 6px}
.page-body{padding:18px 0 70px}
.page-body h1{font-size:var(--fs-title-1); margin:0 0 24px}
.page-body .lead{color:var(--muted); font-size:var(--fs-title-4); margin:0 0 26px; max-width:60ch}
.not-found{box-sizing:border-box; max-width:350px; margin:40px auto 20px; padding:32px 28px; background:var(--card); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow); text-align:center}
.not-found .not-found__code{margin:0 0 6px; font-size:var(--fs-display); font-weight:900; line-height:1; color:var(--orange-deep)}
.page-body .not-found h1{font-size:var(--fs-title-3); margin:0 0 12px}
.not-found p{margin:0 0 12px; color:var(--muted); font-size:var(--fs-body)}
.not-found p:last-of-type{margin-bottom:24px}
.not-found__btn{display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 24px; box-sizing:border-box; line-height:1.3; border-radius:999px; background:var(--orange); color:#fff; font-weight:700; text-decoration:none}
.not-found__btn:hover{background:var(--orange-deep); color:#fff}
.not-found__btn:focus-visible{outline:3px solid var(--orange-deep); outline-offset:3px}
.layout{display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:44px; align-items:start}
.layout:not(:has(> .sidebar)){grid-template-columns:minmax(0,1fr)}
.content{max-width:none}
.content h2{font-size:var(--fs-content-h2); margin:38px 0 16px; padding-bottom:8px; border-bottom:2px solid var(--peach-deep); display:inline-block}
.content .band--dark h2{border-bottom-color:#fff}
.content h2:first-child{margin-top:0}
.content > .block-text:not(:first-child):has(> h2:first-child){margin-top:38px}
.content h3{font-size:var(--fs-title-4); margin:26px 0 8px; color:var(--navy)}
.content p{margin:0 0 15px}
.content ul,.content ol{margin:0 0 18px; padding-left:22px}
.content li{margin-bottom:7px}
.content li > ul,.content li > ol{margin:7px 0 0}
.content li > ul{list-style:circle}
.content li > ol > li::marker{content:counter(list-item, lower-alpha) ") "}
.content strong{color:var(--navy); font-weight:700}
.content blockquote{margin:20px 0; padding:16px 22px; background:var(--peach); border-radius:12px; border-left:5px solid var(--orange); color:var(--navy)}
.content blockquote p:last-child{margin-bottom:0}
.content code{background:var(--peach); color:var(--orange-deep); padding:2px 7px; border-radius:6px; font-size:.9em; font-family:ui-monospace,Consolas,monospace}
.tw{overflow-x:auto; margin:0 0 22px; border:1px solid var(--line); border-radius:12px; background:var(--card)}
.content table{border-collapse:collapse; width:100%; font-size:var(--fs-nav); margin:0}
.content th,.content td{padding:11px 15px; text-align:left; vertical-align:top; border-bottom:1px solid var(--line)}
.content th{background:var(--peach); color:var(--navy); font-weight:800; font-size:var(--fs-meta); letter-spacing:.02em}
.content tbody tr:last-child td{border-bottom:0}
.content tbody tr:hover{background:var(--hover-bg)}
.children{margin:14px 0 30px; background:var(--card); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden}
.children summary{display:flex; align-items:center; gap:10px; padding:13px 18px; background:var(--peach); cursor:pointer; list-style:none; user-select:none}
.children summary::-webkit-details-marker{display:none}
.children summary .lbl{font-size:var(--fs-label); font-weight:800; letter-spacing:.11em; text-transform:uppercase; color:var(--orange-deep)}
.children summary .n{flex:1; font-size:var(--fs-meta); font-weight:600; color:var(--navy)}
.children summary .chev{width:10px; height:10px; border-right:2px solid var(--orange-deep); border-bottom:2px solid var(--orange-deep); transform:rotate(45deg); margin:-4px 4px 0 0; transition:transform .2s ease}
.children[open] summary .chev{transform:rotate(225deg); margin-top:4px}
.children ul{list-style:none; margin:0; padding:0}
.children li{border-bottom:1px solid var(--line)}
.children li:last-child{border-bottom:0}
.children li a{display:flex; align-items:center; gap:12px; min-height:52px; padding:12px 18px; text-decoration:none; color:var(--navy); font-weight:700}
.children li a:hover{background:var(--hover-bg); color:var(--orange-deep)}
.children li a .ic{flex:none; width:30px; height:30px; border-radius:8px; background:var(--peach); color:var(--orange-deep); display:grid; place-items:center; font-weight:800}
.children li a .txt{flex:1; min-width:0}
.children li a .arr{flex:none; color:var(--peach-deep); font-weight:800}
.block{margin-top:44px; padding:0; background:var(--card); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden}
.block > h2{font-size:var(--fs-label); font-weight:800; letter-spacing:.11em; text-transform:uppercase; color:var(--orange-deep); background:var(--peach); margin:0; padding:14px 22px; border:0}
.block ul{list-style:none; margin:0; padding:0}
.block li{border-bottom:1px solid var(--line)}
.block li:last-child{border-bottom:0}
.block li a{display:flex; align-items:center; gap:14px; padding:15px 22px; text-decoration:none; color:var(--navy); font-weight:600; transition:background .15s ease}
.block li a:hover{background:var(--hover-bg); color:var(--orange-deep)}
.block li a .ic{flex:none; width:34px; height:34px; border-radius:9px; background:var(--peach); color:var(--orange-deep); display:grid; place-items:center; font-size:var(--fs-nav); font-weight:800}
.block li a .txt{flex:1; min-width:0}
.block li a .meta{display:block; font-size:var(--fs-label); color:var(--muted); font-weight:600; margin-top:2px}
.block li a .arr{flex:none; color:var(--peach-deep); font-weight:800}
.block li a:hover .arr{color:var(--orange)}
.block.bells > h2{display:block; font-size:var(--fs-body); letter-spacing:0; text-transform:none; color:var(--navy); padding:15px 22px}
.block.bells .tw{margin:0; border:0; border-radius:0; background:transparent}
.block.bells .tw > table{width:100%; min-width:0; table-layout:fixed}
.block.bells thead th:nth-child(1){width:20%}
.block.bells thead th:nth-child(2), .block.bells thead th:nth-child(3){width:24%}
.block.bells thead th:nth-child(4){width:32%}
.block.bells th, .block.bells td{padding:11px 8px; min-width:0; white-space:nowrap; vertical-align:middle; text-align:center}
.block.bells thead th{background:transparent; color:var(--muted); font-size:var(--fs-micro); text-transform:uppercase; letter-spacing:.09em; border-bottom:1px solid var(--peach-deep)}
.block.bells th[scope="row"]{font-weight:800; color:var(--navy); background:transparent; text-transform:none; letter-spacing:0; font-size:var(--fs-nav)}
.block.bells td{font-variant-numeric:tabular-nums; font-weight:600}
.block.bells td.break{color:var(--muted)}
.block.bells tbody tr:last-child th, .block.bells tbody tr:last-child td{border-bottom:0}
.block.bells tbody tr:hover{background:var(--hover-bg)}
@media (max-width:640px){
  .block.bells > h2{padding:13px 16px}
  .block.bells th, .block.bells td{padding:10px 4px; font-size:var(--fs-meta)}
  .block.bells thead th{font-size:var(--fs-micro); letter-spacing:.06em; padding:9px 4px}
}
.block.sitemap > h2{display:block; font-size:var(--fs-body); letter-spacing:0; text-transform:none;
  color:var(--navy); padding:15px 22px; scroll-margin-top:20px}
.block.sitemap ul{list-style:none; margin:0; padding:0}
.block.sitemap > ul{padding:16px 22px 20px}
.block.sitemap li{border-bottom:0; margin:0}
.block.sitemap li a{display:inline-flex; align-items:baseline; gap:8px; padding:5px 0; text-decoration:none;
  color:var(--navy); font-weight:600; line-height:20px}
.block.sitemap li a:hover{background:transparent; color:var(--orange-deep); text-decoration:underline}
.block.sitemap li a .ic{width:auto; height:auto; padding:0; background:transparent; color:var(--peach-deep); font-weight:800; border-radius:0}
.block.sitemap li a:hover .ic{color:var(--orange)}
.block.sitemap > ul > li > a{font-weight:800}
.block.sitemap ul ul{margin:0 0 8px 10px; padding-left:16px; border-left:2px solid var(--peach-deep)}
.block.sitemap ul ul a{font-size:var(--fs-nav)}
.block.sitemap .az-index{display:flex; flex-wrap:wrap; gap:6px; padding:16px 22px 0}
.block.sitemap .az-index a{display:grid; place-items:center; min-width:34px; height:34px; padding:0 8px;
  border-radius:9px; background:var(--peach); color:var(--orange-deep); font-weight:800; font-size:var(--fs-meta); text-decoration:none}
.block.sitemap .az-index a:hover{background:var(--orange); color:#fff}
.block.sitemap .sitemap-az{padding:0 22px 26px}
.block.sitemap .az-group{margin:0}
.block.sitemap .az-group ul{list-style:none; margin:0; padding:0 0 0 28px}
.block.sitemap .az-letter{display:flex; align-items:center; gap:12px; margin:22px 0; padding:0;
  font-size:var(--fs-label); line-height:20px; font-weight:800; letter-spacing:.12em; color:var(--orange-deep);
  background:transparent; border:0; text-transform:uppercase; scroll-margin-top:20px}
.block.sitemap .az-letter::after{content:""; flex:1; height:0; border-top:1px solid var(--peach-deep)}
.block.sitemap .az-group li a{padding:6px 0}
@media (max-width:640px){
  .block.sitemap > ul{padding:14px 16px 18px}
  .block.sitemap .az-index{padding:14px 16px 0}
  .block.sitemap .sitemap-az{padding:8px 16px 18px}
}
.sitemap-jump{display:flex; flex-wrap:wrap; gap:10px; margin:26px 0 0}
.sitemap-jump a{display:inline-flex; align-items:center; gap:8px; padding:11px 18px;
  background:var(--peach); border:1px solid var(--peach-deep); border-radius:12px;
  color:var(--orange-deep); font-weight:700; text-decoration:none; line-height:20px}
.sitemap-jump a:hover{background:var(--peach-deep); border-color:var(--orange); color:var(--orange-deep)}
.sitemap-jump a:focus-visible{outline:2px solid var(--orange); outline-offset:2px}
@media (max-width:640px){ .sitemap-jump a{flex:1 1 auto; justify-content:center} }
.toc{background:var(--card); border:1px solid var(--line); border-radius:var(--radius);
  padding:18px 22px 20px; margin:26px 0 30px}
.toc .toc-title{font-size:var(--fs-label); letter-spacing:.12em; text-transform:uppercase; font-weight:800;
  color:var(--orange-deep); margin:0 0 12px; padding:0}
.toc ol{list-style:none; margin:0; padding:0; counter-reset:toc}
.toc li{counter-increment:toc; margin:0; border:0}
.toc li a{display:flex; gap:10px; padding:6px 0; line-height:20px; text-decoration:none;
  color:var(--navy); font-weight:600}
.toc li a::before{content:counter(toc) "."; color:var(--peach-deep); font-weight:800; min-width:20px}
.toc li a:hover{color:var(--orange-deep); text-decoration:underline}
.toc li a:focus-visible{outline:2px solid var(--orange); outline-offset:2px}
.content h2[id], .block-text h2[id]{scroll-margin-top:20px}
@media (max-width:640px){ .toc{padding:16px 16px 18px; margin:22px 0 26px} }
.ext{display:inline-block; width:12px; height:12px; margin-left:5px; vertical-align:-1px; opacity:.8}
.block.files li a .ic svg{display:block}
.block.files .pdf-viewer{padding:16px 22px 0}
.block.files .pdf-viewer object{display:block; width:100%; height:640px; border:1px solid var(--line); border-radius:12px; background:var(--cream)}
.block.files .pdf-viewer p{margin:0; padding:14px}
@media (max-width:640px){ .block.files .pdf-viewer{padding:12px 16px 0} .block.files .pdf-viewer object{height:420px} }
.block.audio .audio-desc{margin:0; padding:14px 22px 0; color:var(--muted)}
.block.audio .audio-item{margin:0; padding:16px 22px; border-top:1px solid var(--line)}
.block.audio .audio-desc + .audio-item, .block.audio > h2 + .audio-item{border-top:0}
.block.audio figcaption{font-weight:700; color:var(--navy); margin-bottom:8px}
.block.audio audio{display:block; width:100%; height:40px}
.block.audio .audio-download{display:inline-block; margin-top:8px; font-size:var(--fs-meta); font-weight:700; color:var(--orange-deep)}
.video-frame video{position:absolute; inset:0; display:block; width:100%; height:100%; background:#000}
.block-info{margin:22px 0; padding:18px 22px; background:var(--peach); border-left:5px solid var(--orange); border-radius:12px; color:var(--navy)}
.block-info.important{background:var(--tint); border-left-color:var(--bar-solid)}
.block-info h2{font-size:var(--fs-label); letter-spacing:.11em; text-transform:uppercase; color:var(--orange-deep); margin:0 0 8px}
.block-info p{margin:0 0 10px}
.block-info p:last-child, .block-info ul:last-child, .block-info ol:last-child{margin-bottom:0}
.block-quote{margin:26px 0; padding:18px 24px 16px 26px; border-left:4px solid var(--peach-deep); background:transparent; color:var(--navy); font-size:var(--fs-title-4); line-height:30px}
.block-quote p{margin:0 0 8px}
.block-quote footer{font-size:var(--fs-meta); color:var(--muted); line-height:20px}
.block-quote footer::before{content:"— "}
.block-sep{border:0; border-top:1px solid var(--peach-deep); margin:34px 0}
.block-link{display:flex; align-items:center; gap:14px; margin:14px 0; padding:15px 22px; background:var(--card); border:1px solid var(--line); border-radius:14px; text-decoration:none; color:var(--navy)}
.block-link:hover{border-color:var(--peach-deep); background:var(--hover-bg)}
.block-link .ic{flex:none; width:34px; height:34px; border-radius:9px; background:var(--peach); color:var(--orange-deep); display:grid; place-items:center; font-size:var(--fs-nav); font-weight:800}
.block-link .txt{flex:1; min-width:0}
.block-link .txt b{font-weight:800}
.block-link .meta{display:block; font-size:var(--fs-label); color:var(--muted); font-weight:600; margin-top:2px}
.block-link .arr{flex:none; color:var(--peach-deep); font-weight:800}
.block-link:hover .arr{color:var(--orange)}
.block.contact .contact-note{margin:0; padding:14px 22px 0; color:var(--muted)}
.block.contact .contact-note + ul{margin-top:8px}
.block.contact li a .txt{font-size:var(--fs-title-4); font-weight:800}
.block-table{margin:22px 0}
.block-table caption{text-align:left; padding:10px 15px; font-weight:800; color:var(--navy); background:var(--peach)}
.block-image{margin:22px auto; text-align:center}
.block-image--s{max-width:33%}
.block-image--m{max-width:50%}
.block-image a{display:inline-block; width:100%; max-width:calc(min(560px, 70vh) * var(--ar, 1.5)); vertical-align:top; border-radius:12px; overflow:hidden; background:var(--cream)}
.block-image img, .content .block-image img{display:block; width:100%; height:auto}
.block-image figcaption{margin-top:8px; font-size:var(--fs-nav); color:var(--muted)}
@media (max-width:640px){ .block-image--s, .block-image--m{max-width:none} }
.page-body{overflow-x:clip}
.band{margin:32px 0; padding:32px; border-radius:var(--radius)}
.band > :first-child{margin-top:0}
.band > :last-child{margin-bottom:0}
.band + .band{margin-top:0}
.content > :first-child{margin-top:0}
.band--light{background:var(--cream)}
.band--warm{background:var(--peach)}
.band--dark{background:var(--dark); color:#fff}
.band--dark h2, .band--dark h3, .band--dark strong, .content .band--dark strong, .content .band--dark h2, .content .band--dark h3{color:#fff}
.band--dark a{color:#fff}
.band--accent{background:var(--bar-solid); color:#fff}
.band--accent h2, .band--accent h3, .band--accent strong, .content .band--accent strong, .content .band--accent h2, .content .band--accent h3, .band--accent a{color:#fff}
.content .band--accent h2{border-bottom-color:#fff}
.band--accent .tl__date, .content .band--accent .block-timeline .tl__title{color:#fff}
.band--accent .tl{border-left-color:rgba(255,255,255,.5)}
.band--accent .tl__item::before{background:#fff; border-color:var(--bar-solid)}
.band--card{background:var(--card); border:1px solid var(--line)}
.layout:not(:has(> .sidebar)) .band--card{border-width:1px 0}
.layout:not(:has(> .sidebar)) .band{margin-inline:calc(50% - 50vw); padding:48px calc(50vw - 50%); border-radius:0}
.layout:not(:has(> .sidebar)) .band + .band{margin-top:0}
.layout:not(:has(> .sidebar)) .band:has(+ .band){margin-bottom:0}
@media (max-width:640px){ .band{padding:24px 16px} }
.block-mt{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:center; margin:32px 0}
.block-mt--right .block-mt__img{order:2}
.block-mt--noimg{grid-template-columns:minmax(0,1fr)}
.block-mt__img{margin:0}
.block-mt__img a{display:block; border-radius:12px; overflow:hidden; background:var(--cream)}
.block-mt__img img{display:block; width:100%; height:auto; max-height:min(560px, 70vh); object-fit:cover}
.block-mt__text > h2:first-child{margin-top:0}
.block-mt__text > :last-child{margin-bottom:0}
.block-mt--narrow{grid-template-columns:minmax(0,3fr) minmax(0,7fr)}
.block-mt--narrow.block-mt--right{grid-template-columns:minmax(0,7fr) minmax(0,3fr)}
@media (max-width:768px){ .block-mt, .block-mt--narrow, .block-mt--narrow.block-mt--right{grid-template-columns:minmax(0,1fr); gap:16px} .block-mt--right .block-mt__img{order:0} }
.block-tiles{display:grid; grid-template-columns:repeat(var(--cols, 3), minmax(0,1fr)); gap:24px; margin:32px 0}
.tile{position:relative; display:flex; flex-direction:column; border-radius:var(--radius); overflow:hidden; background:var(--card); box-shadow:var(--shadow)}
.tile__img{position:relative; aspect-ratio:4/3; overflow:hidden; background:var(--cream)}
.block-tiles .tile__img img{position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover}
.tile__body{padding:18px 20px 20px}
.block-tiles .tile__title{margin:0 0 8px; font-size:var(--fs-title-4); color:var(--navy)}
.tile__title a{color:inherit; text-decoration:none}
.tile--link .tile__title a::after{content:""; position:absolute; inset:0}
.tile--link:hover .tile__title a, .tile--link:focus-within .tile__title a{text-decoration:underline}
.tile__body > :last-child{margin-bottom:0}
@media (max-width:900px){ .block-tiles{grid-template-columns:repeat(2, minmax(0,1fr))} }
.block-faq{margin:32px 0}
.content .block-faq > h2, .content .block-steps > h2, .content .block-timeline > h2, .content .block-stats > h2{margin-bottom:26px}
.faq__item{margin:0 0 10px; border:1px solid var(--peach-deep); border-radius:12px; overflow:hidden; background:var(--peach)}
.faq__q{display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 20px; cursor:pointer; list-style:none; font-weight:700; color:var(--navy)}
.faq__q::-webkit-details-marker{display:none}
.faq__q::after{content:""; flex:0 0 auto; width:32px; height:32px; border-radius:50%; background:var(--card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B2845' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / 18px no-repeat; transition:transform .2s}
.faq__item[open] > .faq__q::after{transform:rotate(180deg)}
.faq__q:focus-visible{outline:3px solid var(--orange); outline-offset:-3px}
.faq__a{padding:16px 20px 18px; background:var(--card); border-top:1px solid var(--peach-deep)}
.faq__a > :last-child{margin-bottom:0}
.faq__links{margin-top:16px}
.faq__links .block-link{margin:10px 0 0}
.faq__links .block-link:first-child{margin-top:0}
.block-steps{margin:32px 0}
.content .steps{list-style:none; margin:0; padding:0; counter-reset:step}
.content .steps > .step{counter-increment:step; position:relative; margin:0}
.step::before{content:counter(step); display:flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:50%; background:var(--orange); color:#fff; font-weight:700; font-size:var(--fs-title-4)}
.block-steps .step__title{margin:0 0 6px; font-size:var(--fs-title-4); color:var(--navy)}
.step > :last-child{margin-bottom:0}
.block-steps--vertical .step{padding:0 0 24px 64px; min-height:44px}
.block-steps--vertical .step::before{position:absolute; left:0; top:0}
.block-steps--vertical .step:not(:last-child)::after{content:""; position:absolute; left:21px; top:52px; bottom:8px; border-left:2px solid var(--peach-deep)}
.block-steps--horizontal .steps{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:32px 24px}
.block-steps--cols2 .steps{grid-template-columns:repeat(2, minmax(0,1fr))}
.block-steps--horizontal .step::before{margin-bottom:12px}
@media (max-width:768px){
  .block-steps--horizontal .steps{display:block}
  .block-steps--horizontal .step{padding:0 0 24px 64px; min-height:44px}
  .block-steps--horizontal .step::before{position:absolute; left:0; top:0; margin:0}
}
.block-timeline{margin:32px 0}
.block-timeline, .block-steps, .block-stats, .block-faq, .block-form, .block-form-list{padding:0}
.content .tl{list-style:none; margin:0; padding:0 0 0 28px; border-left:2px solid var(--peach-deep)}
.content .tl > .tl__item{position:relative; margin:0; padding:0 0 24px}
.tl__item::before{content:""; position:absolute; left:-36px; top:4px; width:14px; height:14px; border-radius:50%; background:var(--orange); border:3px solid var(--card)}
.tl__date{margin:0 0 2px; font-size:var(--fs-meta); font-weight:700; color:var(--orange-deep)}
.block-timeline .tl__title{margin:0 0 6px; font-size:var(--fs-title-4); color:var(--navy)}
.tl__item > :last-child{margin-bottom:0}
.block-cta{display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; margin:32px 0; padding:28px 32px; border-radius:var(--radius); background:var(--dark); color:#fff}
.content .block-cta .cta__text{margin:0; font-size:var(--fs-title-3); font-weight:700; color:#fff}
.cta__btn{display:inline-flex; align-items:center; gap:6px; padding:14px 26px; border-radius:999px; background:var(--orange); color:#fff; font-weight:700; text-decoration:none}
.cta__btn:hover, .cta__btn:focus-visible{background:var(--orange-deep); color:#fff}
.cta__btn:focus-visible{outline:3px solid #fff; outline-offset:3px}
.block-opinions{display:grid; grid-template-columns:repeat(auto-fit, minmax(260px, 1fr)); gap:24px; margin:32px 0}
.opinion{display:flex; flex-direction:column; margin:0; padding:24px; border-radius:var(--radius); background:var(--card); box-shadow:var(--shadow)}
.opinion__text, .content .opinion__text{margin:0 0 16px; padding:0; border:0; border-radius:0; background:none; color:inherit; font-style:normal}
.opinion__text::before{content:"„"; display:block; height:44px; font-size:var(--fs-title-1); line-height:44px; color:var(--orange)}
.opinion__who{display:flex; align-items:center; gap:12px; margin-top:auto; font-weight:700; color:var(--navy)}
.content .opinion__photo{width:56px; height:56px; border-radius:50%; object-fit:cover}
@media (max-width:640px){ .block-tiles{grid-template-columns:minmax(0,1fr); gap:16px} }
.block-images{margin:22px 0; display:grid; gap:12px; grid-template-columns:repeat(var(--cols, 3), minmax(0, 1fr))}
.block-images a{display:block; position:relative; border-radius:12px; overflow:hidden; background:var(--cream); aspect-ratio:4/3}
.block-images a img{position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover}
.block-images figure{margin:0}
.block-images figcaption{margin-top:6px; font-size:var(--fs-meta); color:var(--muted)}
@media (max-width:640px){ .block-images{grid-template-columns:1fr 1fr; gap:8px} }
.block-embed{position:relative; margin:22px 0; border:1px solid var(--line); border-radius:14px; background:var(--card); overflow:hidden}
.block-embed.embed-s{height:280px} .block-embed.embed-m{height:420px} .block-embed.embed-l{height:600px}
.block-embed.map .embed-cover{background:linear-gradient(135deg, var(--cream), var(--peach))}
.embed-cover{height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; padding:24px; text-align:center}
.embed-cover h2{margin:0; font-size:var(--fs-title-4); color:var(--navy)}
.embed-cover p{margin:0; color:var(--muted)}
.embed-load{display:inline-block; margin-top:6px; padding:12px 22px; border-radius:12px; background:var(--orange); color:#fff; font-weight:800; text-decoration:none}
.embed-load:hover{background:var(--orange-deep)}
.embed-note{font-size:var(--fs-label); color:var(--muted); max-width:460px}
.block-embed iframe{position:absolute; inset:0; width:100%; height:100%; border:0}
@media (max-width:640px){ .block-embed.embed-m{height:340px} .block-embed.embed-l{height:420px} }
.lightbox{position:fixed; inset:0; width:100vw; height:100vh; max-width:none; max-height:none; margin:0; padding:0 0 92px; border:0; border-radius:0; background:transparent; color:#fff; overflow:visible; display:none; flex-direction:column; justify-content:center; align-items:center}
.lightbox[open]{display:flex}
.lightbox::backdrop{background:rgba(10,14,24,.88)}
.lightbox figure{margin:0; text-align:center}
.lightbox img{display:block; max-width:min(92vw, 1400px); max-height:calc(100vh - 170px); width:auto; height:auto; border-radius:12px; background:#000; margin:0 auto}
.lightbox figcaption{margin-top:10px; font-size:var(--fs-nav); color:#fff; opacity:.9}
.lb-bar{position:fixed; left:0; right:0; bottom:18px; display:flex; align-items:center; justify-content:center; gap:10px; margin:0}
.lb-bar button, .lb-download{height:44px; padding:0 18px; border:1px solid rgba(255,255,255,.35); border-radius:12px; background:rgba(255,255,255,.12); color:#fff; font:inherit; font-weight:800; text-decoration:none; cursor:pointer; display:inline-flex; align-items:center}
.lb-bar button:hover, .lb-download:hover{background:rgba(255,255,255,.24)}
.lb-count{width:118px; height:44px; padding:0; display:inline-flex; align-items:center; justify-content:center; border:1px solid rgba(255,255,255,.35); border-radius:12px; background:rgba(255,255,255,.08); font-weight:700; font-size:var(--fs-nav); font-variant-numeric:tabular-nums; white-space:nowrap}
.lb-download{width:44px; padding:0; justify-content:center; margin-left:8px}
.lb-tip{position:fixed; left:50%; bottom:74px; transform:translateX(-50%); padding:8px 12px; border-radius:10px; background:#fff; color:var(--navy); font-size:var(--fs-meta); line-height:18px; text-align:center; box-shadow:0 8px 24px rgba(0,0,0,.35); opacity:0; visibility:hidden; transition:opacity .12s ease; pointer-events:none; z-index:2}
.lb-tip.is-on{opacity:1; visibility:visible}
.lb-tip b{display:block; font-weight:800}
.lb-tip span{color:var(--muted)}
.cal-ics{margin:22px 0 0}
.lb-download svg{width:22px; height:22px; flex:none}
.lb-bar button:focus-visible, .lb-download:focus-visible{outline:2px solid #fff; outline-offset:2px}
.lb-download{padding:0 20px}
.lb-prev, .lb-next{width:44px; padding:0; font-size:var(--fs-title-3)}
.lb-close{width:44px; padding:0; font-size:var(--fs-title-3)}
.lb-close--top{position:fixed; top:16px; right:16px; width:44px; height:44px; padding:0; border:1px solid rgba(255,255,255,.35); border-radius:50%; background:rgba(255,255,255,.12); color:#fff; font:inherit; font-size:var(--fs-title-3); line-height:1; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; z-index:2}
.lb-close--top:hover{background:rgba(255,255,255,.24)}
.lb-close--top:focus-visible{outline:2px solid #fff; outline-offset:2px}
@media (max-width:640px){ .lb-close--top{top:10px; right:10px} }
@media (max-width:640px){ .lightbox img{max-width:96vw; max-height:calc(100vh - 160px)} .lb-bar{flex-wrap:wrap; bottom:12px} }
.block-news{margin:34px 0; padding:0}
.block-news > h2{margin:0 0 18px}
.block-hero{margin:0 0 34px; padding:28px 0 0}
.content .block-hero .cap h2{display:block; border:0; padding:0; margin:6px 0 4px; font-size:var(--fs-display); color:#fff}
.content .block-hero .cap small{display:block}
.slide picture{display:block; height:100%}
.block-hero .slide img{height:100%}
.slide--side::after, .slide--color::after{content:none}
.slide--dark{background:var(--dark)}
.slide--accent{background:var(--bar-solid)}
.slide--warm{background:var(--peach)}
.slide__side{position:absolute; top:0; right:0; bottom:0; width:310px}
.slide--side .cap{max-width:calc(100% - 310px)}
.slide--color .cap{max-width:80%}
.content .block-carousel .slide--warm .cap h2, .block-carousel .slide--warm .cap{color:var(--navy)}
.block-carousel .slide--warm .cap small, .block-carousel .slide--accent .cap small{color:inherit}
@media (max-width:640px){
  .slide__side{width:38%}
  .slide--side .cap{max-width:62%}
  .slide--color .cap{max-width:100%}
}
.content .news{gap:18px}
.content .news h3{margin:.4em 0 .45em}
.chips{display:flex; flex-wrap:wrap; gap:8px; margin:0 0 18px}
.chips a{display:inline-flex; align-items:center; height:36px; padding:0 14px; border-radius:999px; border:1px solid var(--line); background:var(--card); color:var(--navy); font-weight:700; font-size:var(--fs-meta); text-decoration:none}
.chips a:hover{background:var(--peach); border-color:var(--peach-deep)}
.chips a[aria-current]{background:var(--orange); border-color:var(--orange); color:#fff}
.content > .block-news:first-child{margin-top:0}
.chips a .n{margin-left:6px; font-weight:600; color:var(--muted)}
.chips a[aria-current] .n{color:rgba(255,255,255,.85)}
.pager{margin:26px 0 0}
.pager .gap{border:0; background:transparent; min-width:24px; padding:0; color:var(--muted)}
.pager .step{padding:0 14px}
.pager-info{margin:10px 0 0; font-size:var(--fs-meta); color:var(--muted)}
.pager ul{list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:8px}
.pager a, .pager span{display:grid; place-items:center; min-width:40px; height:40px; padding:0 12px; border-radius:11px; font-weight:800; text-decoration:none; color:var(--navy); background:var(--card); border:1px solid var(--line)}
.pager a:hover{background:var(--peach); border-color:var(--peach-deep)}
.pager span[aria-current]{background:var(--orange); border-color:var(--orange); color:#fff}
.news-item .wpis-foto{aspect-ratio:auto}
.news-item .wpis-foto img{height:auto}
.news-back{margin-top:30px}
.layout:has(> .sidebar) .content .news{grid-template-columns:1fr 1fr}
@media (max-width:900px){ .content .news{grid-template-columns:1fr 1fr} }
@media (max-width:640px){ .content .news{grid-template-columns:1fr} }
.block-galleries{margin:34px 0; padding:0}
.block-galleries > h2{margin:0 0 18px}
.content > .block-galleries:first-child{margin-top:0}
.content .albumy{margin:0; padding:0}
.content .albumy li{border:0; margin:0; padding:0}
.block-gallery{margin:34px 0; padding:0}
.block-gallery .sec-head{margin-bottom:18px}
.block-gallery .sec-head h2{margin:0}
.content .zdjecia{grid-template-columns:repeat(var(--cols, 4), minmax(0, 1fr)); gap:12px}
.zdjecia li{border:0; margin:0; padding:0}
.zdjecia figure{margin:0}
.zdjecia figcaption{margin-top:6px; font-size:var(--fs-meta); color:var(--muted); line-height:20px}
.zdjecia figcaption .author{color:var(--orange-deep); font-weight:600}
.chips.years{margin-top:-6px}
@media (max-width:900px){ .content .zdjecia{grid-template-columns:repeat(3, minmax(0,1fr))} }
@media (max-width:640px){ .content .zdjecia{grid-template-columns:repeat(2, minmax(0,1fr)); gap:8px} }
.zdjecia.zdjecia--mozaika, .content .zdjecia.zdjecia--mozaika{grid-template-columns:repeat(6, minmax(0,1fr)); grid-auto-flow:row dense}
.zdjecia--mozaika figcaption{display:none}
.zdjecia.zdjecia--mozaika a{aspect-ratio:4/3}
.zdjecia--mozaika li.male{grid-column:span 2}
.zdjecia--mozaika li.pol{grid-column:span 3}
.zdjecia--mozaika li.cale{grid-column:1 / -1}
.zdjecia.zdjecia--mozaika li.cale a{aspect-ratio:16/9}
.zdjecia--mozaika li.duze-l{grid-column:1 / span 4; grid-row:span 2}
.zdjecia--mozaika li.duze-p{grid-column:3 / span 4; grid-row:span 2}
.zdjecia--mozaika li.duze-l figure, .zdjecia--mozaika li.duze-p figure{height:100%}
.zdjecia.zdjecia--mozaika li.duze-l a, .zdjecia.zdjecia--mozaika li.duze-p a{aspect-ratio:auto; height:100%}
@media (max-width:640px){
  .zdjecia--mozaika li.male{grid-column:span 3}
  .zdjecia--mozaika li.duze-l, .zdjecia--mozaika li.duze-p{grid-column:1 / -1; grid-row:auto}
  .zdjecia.zdjecia--mozaika li.duze-l a, .zdjecia.zdjecia--mozaika li.duze-p a{aspect-ratio:3/2; height:auto}
}
.block-calendar{margin:34px 0; padding:0}
.content > .block-calendar:first-child{margin-top:0}
.block-calendar > h2{margin:0 0 18px}
.block-calendar .cal-month > h2{font-size:var(--fs-title-4)}
.content h2.archive-title{margin:0 0 16px; font-size:var(--fs-title-3)}
.block-news .archive-head{margin:0 0 18px; align-items:center}
.block-news .archive-head h2{margin:0; display:flex; align-items:center; gap:10px}
.archive-title .back{display:inline-grid; place-items:center; width:36px; height:36px; border-radius:50%; background:var(--peach); color:var(--orange-deep); text-decoration:none; font-weight:800; flex:none}
.archive-title .back:hover{background:var(--orange); color:#fff}
.content .block-menu h2.archive-title{display:flex; align-items:center; gap:12px}
.archive-back{margin:0 0 18px; font-size:var(--fs-nav)}
.archive-back a{color:var(--orange-deep); font-weight:700; text-decoration:none}
.archive-back a:hover{text-decoration:underline}
.cal-archive{display:flex; align-items:center; flex-wrap:wrap; gap:10px 14px; margin:36px 0 0; padding-top:20px; border-top:1px solid var(--line)}
.cal-archive .lbl{font-size:var(--fs-label); font-weight:800; letter-spacing:1px; text-transform:uppercase; color:var(--orange-deep)}
.cal-archive .chips{display:inline-flex; margin:0}
.cal-event h3{margin:0}
.cal-event h3 a{color:inherit}
.block-calendar.upcoming .sec-head{margin-bottom:18px}
.block-calendar.upcoming .sec-head h2{margin:0}
.cal-row{display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:16px}
.block-calendar.upcoming .cal-event{margin:0; flex-direction:column}
.block-calendar.upcoming .cal-date{flex:none; flex-direction:row; align-items:baseline; justify-content:flex-start; gap:8px; margin-left:5px; padding:12px 16px; border-right:0; border-bottom:1px solid var(--line)}
.block-calendar.upcoming .cal-date .d{font-size:var(--fs-title-4); font-weight:800}
.block-calendar.upcoming .cal-date .d.range{font-size:var(--fs-body)}
.block-calendar.upcoming .cal-date .m, .block-calendar.upcoming .cal-date .wd{margin-top:0}
.block-calendar.upcoming .cal-date .wd{margin-left:auto}
.block-calendar.upcoming .cal-body{padding:14px 16px 16px 21px}
.block-calendar.upcoming .head{flex-direction:column; align-items:flex-start; gap:8px}
.block-calendar.upcoming h3{font-size:var(--fs-body); font-weight:700}
.block-calendar.upcoming h3 a{text-decoration:none}
.block-calendar.upcoming h3 a:hover{text-decoration:underline}
.block-calendar.upcoming .meta{margin-top:4px}
.block-calendar.upcoming .desc{margin-top:8px}
.block-calendar.upcoming .desc{display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden}
@media (min-width:1100px){ .block-calendar.upcoming :is(h3, .meta, .desc){max-width:70%} }
@media (max-width:900px){ .cal-row{grid-template-columns:repeat(2, minmax(0, 1fr))} }
@media (max-width:640px){ .cal-row{grid-template-columns:1fr; gap:10px} }
@media (max-width:640px){
  .cal-event{flex-direction:column}
  .cal-date, .block-calendar.upcoming .cal-date{flex:none; flex-direction:row; gap:8px; justify-content:flex-start; border-right:0; border-bottom:1px solid var(--line); padding:10px 16px}
  .cal-date .m, .cal-date .wd{margin-top:0}
}
.block-staff{margin:34px 0; padding:0}
.content > .block-staff:first-child{margin-top:0}
.block-staff > h2{margin:0 0 16px}
.content .grono{display:grid; grid-template-columns:repeat(auto-fill, minmax(280px, 1fr)); gap:12px; margin:0; padding:0; list-style:none}
.content .grono li{margin:0; padding:0; border:0}
.osoba{position:relative; display:flex; align-items:center; gap:14px; width:100%; height:100%; text-align:left; padding:14px 34px 14px 16px; background:var(--card); border:1px solid var(--line); border-radius:14px; font:inherit; color:var(--ink); cursor:pointer; transition:transform .18s ease, box-shadow .18s ease}
.osoba:hover{transform:translateY(-2px); box-shadow:0 10px 24px rgba(var(--warm-rgb),.10)}
.osoba:focus-visible{outline:3px solid var(--orange); outline-offset:2px}
.osoba::after{content:"\2192"; position:absolute; right:14px; bottom:12px; font-size:var(--fs-meta); font-weight:800; color:var(--peach-deep); transition:color .15s ease, transform .15s ease}
.osoba:hover::after{color:var(--orange); transform:translateX(3px)}
.osoba .txt{min-width:0}
.osoba b{display:block; color:var(--navy); font-size:var(--fs-body); line-height:20px}
.osoba .txt > span{display:block; color:var(--muted); font-size:var(--fs-meta); margin-top:3px; line-height:19px}
.osoba .klasa, .grono-lista .klasa{display:inline-block; margin-top:6px; padding:2px 9px; border-radius:999px; background:var(--peach); color:var(--orange-deep); font-size:var(--fs-micro); font-weight:800; line-height:18px}
.osoba .txt > span.klasa{display:inline-block}
.monogram{flex:none; display:grid; place-items:center; width:52px; height:52px; border-radius:50%; color:#fff; font-size:var(--fs-title-4); font-weight:800; line-height:1; background:var(--navy)}
.monogram.z0{background:var(--navy)} .monogram.z1{background:var(--orange-deep)} .monogram.z2{background:#3F8F5C} .monogram.z3{background:#2F6FB5}
.monogram.z4{background:#8E4B9E} .monogram.z5{background:#B5542F} .monogram.z6{background:#5B6C8F}
.osoba .foto{flex:none; width:52px; height:52px; border-radius:50%; overflow:hidden; background:var(--peach)}
.osoba .foto img, .content .osoba .foto img{display:block; width:52px; height:52px; object-fit:cover}
.osoba-dialog{width:min(520px, calc(100vw - 32px)); padding:0; border:1px solid var(--line); border-radius:18px; background:var(--card); color:var(--ink); box-shadow:0 24px 60px rgba(var(--warm-rgb),.28)}
.osoba-dialog::backdrop{background:rgba(27,40,69,.45)}
.osoba-dialog .glowa{display:flex; align-items:center; gap:16px; padding:22px 56px 16px 24px; border-bottom:1px solid var(--line)}
.osoba-dialog .monogram{width:64px; height:64px; font-size:var(--fs-title-3); background-size:cover; background-position:center}
.osoba-dialog h2{font-size:var(--fs-title-3); margin:0; color:var(--navy)}
.osoba-dialog .rola{color:var(--muted); margin:4px 0 0; font-size:var(--fs-nav)}
.osoba-dialog .cialo{padding:18px 24px 22px}
.osoba-dialog dl{margin:0; display:grid; grid-template-columns:auto 1fr; gap:8px 16px}
.osoba-dialog dt{font-size:var(--fs-label); font-weight:800; letter-spacing:1px; text-transform:uppercase; color:var(--orange-deep); padding-top:2px}
.osoba-dialog dd{margin:0; color:var(--ink); font-size:var(--fs-body)}
.osoba-dialog dd a{color:var(--orange-deep); font-weight:700}
.osoba-dialog .zamknij{position:absolute; top:12px; right:12px; width:40px; height:40px; border:0; border-radius:10px; background:var(--peach); color:var(--orange-deep); font-size:var(--fs-title-3); cursor:pointer}
.osoba-dialog .zamknij:hover{background:var(--orange); color:#fff}
.content .grono-lista{margin:0; padding:0; list-style:none}
.content .grono-lista li{display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 14px; margin:0; padding:10px 0; border:0; border-bottom:1px solid var(--line)}
.grono-lista b{color:var(--navy)}
.grono-lista .rola{color:var(--muted); font-size:var(--fs-meta)}
.grono-lista .klasa{margin-top:0}
.grono-lista .mail{margin-left:auto; font-size:var(--fs-meta); color:var(--orange-deep); font-weight:700}
@media (max-width:640px){ .grono-lista .mail{margin-left:0; flex-basis:100%} }
.chips-row{display:flex; align-items:flex-start; gap:8px; margin:0 0 18px}
.months-bar{margin:28px 0 0; padding-top:20px; border-top:1px solid var(--line)}
.chips-row .chips{margin:0; flex:1}
.archive-btn{flex:none; display:inline-flex; align-items:center; gap:6px; height:36px; padding:0 14px; border-radius:999px; border:1px solid var(--peach-deep); background:var(--peach); color:var(--orange-deep); font-weight:800; font-size:var(--fs-meta); text-decoration:none}
.archive-btn::before{content:""; width:14px; height:14px; border:2px solid currentColor; border-radius:3px; box-sizing:border-box; border-top-width:4px}
.archive-btn:hover{background:var(--orange); border-color:var(--orange); color:#fff}
.archive-dialog{width:min(560px, calc(100vw - 32px)); max-height:min(80vh, 640px); padding:0; border:1px solid var(--line); border-radius:18px; background:var(--card); color:var(--ink); box-shadow:0 24px 60px rgba(var(--warm-rgb),.28); overflow:hidden}
.archive-dialog::backdrop{background:rgba(27,40,69,.45)}
.archive-dialog .glowa{display:flex; align-items:center; gap:12px; padding:18px 14px 14px 24px; border-bottom:1px solid var(--line)}
.archive-dialog .glowa h2{flex:1}
.archive-dialog .newest{display:inline-flex; align-items:center; height:36px; padding:0 14px; border-radius:999px; background:var(--peach); color:var(--orange-deep); font-weight:800; font-size:var(--fs-meta); text-decoration:none}
.archive-dialog .newest:hover{background:var(--orange); color:#fff}
.archive-dialog h2{font-size:var(--fs-title-3); margin:0; color:var(--navy)}
.archive-dialog .zamknij{width:40px; height:40px; border:0; border-radius:10px; background:var(--peach); color:var(--orange-deep); font-size:var(--fs-title-3); cursor:pointer}
.archive-dialog .zamknij:hover{background:var(--orange); color:#fff}
.archive-dialog .cialo{display:grid; grid-template-columns:1fr; max-height:calc(min(80vh, 640px) - 74px); overflow:auto}
.archive-dialog .cialo.two{grid-template-columns:200px 1fr}
.archive-dialog .cialo.two nav:first-child{border-right:1px solid var(--line); background:var(--cream)}
.archive-dialog ul{list-style:none; margin:0; padding:10px}
.archive-dialog li{margin:0; padding:0}
.archive-dialog a{display:flex; justify-content:space-between; align-items:center; gap:10px; padding:9px 12px; border-radius:10px; color:var(--navy); font-weight:700; font-size:var(--fs-nav); text-decoration:none}
.archive-dialog a:hover{background:var(--peach)}
.archive-dialog a.is-on{background:var(--peach); color:var(--orange-deep)}
.archive-dialog a[aria-current]{background:var(--orange); color:#fff}
.archive-dialog .n{font-weight:600; color:var(--muted); font-size:var(--fs-meta)}
.archive-dialog a[aria-current] .n{color:rgba(255,255,255,.85)}
.archive-dialog .months{padding:0}
@media (max-width:640px){
  .chips-row{flex-direction:column}
  .archive-dialog .cialo.two{grid-template-columns:1fr}
  .archive-dialog .cialo.two nav:first-child{border-right:0; border-bottom:1px solid var(--line)}
  .archive-dialog .cialo.two .years{display:flex; flex-wrap:wrap; gap:4px}
}
.block-classes{margin:34px 0; padding:0}
.content > .block-classes:first-child{margin-top:0}
.roczniki{display:grid; grid-template-columns:1fr 1fr; gap:12px 20px; margin:8px 0 10px}
.content .rocznik{list-style:none; margin:0; padding:14px 14px 12px; display:flex; flex-wrap:wrap; gap:10px; align-content:flex-start; background:var(--card); border:1px solid var(--line); border-radius:14px}
.content .rocznik li{margin:0; padding:0; border:0}
.kwadrat{position:relative; display:flex; align-items:center; justify-content:center; width:60px; height:60px; border-radius:12px; text-decoration:none; background:var(--peach); color:var(--navy); border:1px solid var(--peach-deep); transition:transform .15s ease, box-shadow .15s ease, background .15s ease}
a.kwadrat:hover, a.kwadrat:focus-visible{transform:translateY(-2px); box-shadow:0 10px 24px rgba(var(--warm-rgb),.12); background:var(--orange); color:#fff; border-color:var(--orange); outline:none}
.kwadrat .duza{font-size:var(--fs-title-4); font-weight:900; letter-spacing:1px; line-height:1; white-space:nowrap}
.kwadrat .hover{position:absolute; left:50%; bottom:calc(100% + 8px); transform:translateX(-50%); white-space:nowrap; background:var(--navy); color:#fff; font-size:var(--fs-label); font-weight:600; padding:6px 10px; border-radius:8px; opacity:0; visibility:hidden; transition:opacity .12s ease; pointer-events:none; z-index:5}
.kwadrat:hover .hover, .kwadrat:focus-visible .hover{opacity:1; visibility:visible}
.kwadrat .abs{position:absolute; left:0; right:0; bottom:-16px; font-size:var(--fs-micro); font-weight:800; letter-spacing:1px; text-transform:uppercase; text-align:center; color:var(--orange-deep); white-space:nowrap}
.rocznik:has(.abs){padding-bottom:28px}
.kwadrat .lb{position:absolute; top:-6px; right:-6px; min-width:18px; height:18px; padding:0 5px; border-radius:999px; background:var(--orange); color:#fff; font-size:var(--fs-micro); font-weight:800; display:grid; place-items:center; border:2px solid var(--card)}
@media (max-width:640px){ .roczniki{grid-template-columns:1fr} }
.rok-h1{display:block; font-size:var(--fs-body); font-weight:600; color:var(--muted); letter-spacing:0; margin-top:4px}
.klasa-kadra, .klasa-droga, .klasa-kronika, .klasa-rok{padding:0}
.klasa-kadra, .klasa-droga, .klasa-kronika{margin:30px 0 0}
.klasa-kadra > h2, .klasa-droga > h2, .klasa-kronika > h2{margin:0 0 12px}
.klasa-opis{margin:0; display:grid; grid-template-columns:150px 1fr; gap:12px 20px; background:var(--card); border:1px solid var(--line); border-radius:14px; padding:18px 20px}
.klasa-opis dt{font-size:var(--fs-label); font-weight:800; letter-spacing:1px; text-transform:uppercase; color:var(--orange-deep); padding-top:3px}
.klasa-opis dd{margin:0}
.content .grono--w-opisie{grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:8px}
.osoba.static{cursor:default; padding-right:16px}
.osoba.static::after{content:none}
.osoba.static:hover{transform:none; box-shadow:none}
@media (max-width:640px){ .klasa-opis{grid-template-columns:1fr; gap:4px 0} .klasa-opis dt{margin-top:10px} }
.content .os-czasu{list-style:none; margin:0; padding:16px 20px 12px; display:flex; flex-wrap:wrap; align-items:flex-start; gap:12px 0; background:var(--card); border:1px solid var(--line); border-radius:14px}
.content .os-czasu li{margin:0; padding:0; border:0}
.os-czasu .krok{position:relative; display:flex; flex-direction:column; align-items:center; gap:6px; padding-right:22px; margin-right:22px}
.os-czasu .krok:not(:last-child)::after{content:""; position:absolute; right:-4px; top:34px; width:26px; height:2px; background:var(--peach-deep)}
.os-czasu .krok:last-child{padding-right:0; margin-right:0}
.os-czasu .rok-lbl{font-size:var(--fs-micro); font-weight:700; color:var(--muted)}
.os-czasu .kwadrat.mini{width:56px; height:56px}
.os-czasu .teraz .kwadrat.mini{background:var(--navy); color:#fff; border-color:var(--navy)}
.klasa-rok{margin:18px 0 0; padding-top:14px; border-top:1px solid var(--line)}
.klasa-rok summary{display:flex; align-items:baseline; gap:12px; cursor:pointer; list-style:none}
.klasa-rok summary::-webkit-details-marker{display:none}
.klasa-rok summary::before{content:"\203A"; color:var(--orange-deep); font-size:var(--fs-title-4); font-weight:800; line-height:1; transition:transform .15s ease}
.klasa-rok[open] summary::before{transform:rotate(90deg)}
.klasa-rok summary .n{color:var(--muted); font-size:var(--fs-meta)}
.klasa-rok summary h2{margin:0}
.klasa-rok[open] summary{margin-bottom:14px}
.klasa-rok summary h2, .klasa-rok > h2{font-size:var(--fs-title-4); display:block; margin:0; border-bottom:0; padding-bottom:0}
.klasa-rok h3{margin:18px 0 10px}
.block-menu{margin:34px 0; padding:0}
.content > .block-menu:first-child{margin-top:0}
.block-menu > h2{margin:0 0 16px}
.block-menu .jadlospis{display:grid; gap:20px; margin:0 0 6px}
.content .block-menu .menu-archive{margin:32px 0 0; text-align:center}
.block-menu .menu-btn{display:inline-flex; align-items:center; min-height:44px; padding:0 24px; border:1px solid var(--line); border-radius:999px; background:var(--card); color:var(--navy); font-weight:700; text-decoration:none}
.block-menu .menu-btn:hover{border-color:var(--orange); color:var(--orange-deep)}
.block-menu .month-nav{margin:0 0 18px}
.dzien{scroll-margin-top:20px}
.block-menu .dzien{background:var(--card); border:1px solid var(--line); border-radius:14px; padding:0; overflow:hidden}
.block-menu .dzien.dzis{border-color:var(--line); box-shadow:none}
.content .block-menu .dzien > h2{display:flex; flex-wrap:wrap; align-items:center; gap:4px 12px; margin:0; padding:14px 22px; background:var(--peach); border:0; border-bottom:1px solid var(--peach-deep); font-size:var(--fs-title-4); line-height:24px; color:var(--navy)}
.block-menu .dzien-nazwa{font-weight:800}
.block-menu .dzien-data{font-weight:500}
.block-menu .dzien-kiedy{margin-left:auto; font-weight:500}
.block-menu .dania{padding:0 22px}
.block-menu .danie{margin:0; padding:16px 0; border-top:1px solid var(--line)}
.block-menu .danie:first-child{border-top:0}
.content .block-menu .danie h3, .content .block-menu .danie .tekst, .content .block-menu .danie .tekst p, .content .block-menu .danie .alerg{font-size:var(--fs-body); line-height:24px; margin:0; padding:0; border:0; color:var(--ink)}
.content .block-menu .danie h3{font-weight:700}
.content .block-menu .danie .tekst p + p{margin-top:8px}
.content .block-menu .danie h3 + .tekst, .content .block-menu .danie .alerg{margin-top:4px}
.block-menu .danie .alerg strong{font-weight:700}
.block-menu .danie u{text-decoration:underline; text-decoration-color:var(--navy); text-decoration-thickness:1px; text-underline-offset:3px; font-weight:inherit}
.block-menu .danie-foto{margin:14px 0 0; text-align:center}
.block-menu .danie-foto a{display:inline-block; max-width:100%}
.block-menu .danie-foto img{display:block; width:480px; max-width:100%; aspect-ratio:4/3; height:auto; object-fit:cover; border-radius:10px}
@media (max-width:640px){
  .content .block-menu .dzien > h2{padding:12px 16px}
  .block-menu .dania{padding:0 16px}
  .block-menu .danie{padding:14px 0}
}
.programy{max-width:var(--content); margin:44px auto 40px; padding:0 24px}
.programy h2, .content .block-partners.logos > h2{font-size:var(--fs-label); font-weight:800; letter-spacing:1px; text-transform:uppercase; color:var(--muted); margin:0 0 14px; padding:0; border:0; display:block}
.loga, .content .loga{list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(var(--cols, 4), minmax(0, 1fr)); gap:12px}
.loga.z-nazwami a, .loga.z-nazwami > li > .box{flex-direction:column; gap:8px}
.loga .nazwa{font-size:var(--fs-meta); font-weight:700; color:var(--navy); text-align:center; line-height:18px}
.content .loga li{margin:0; padding:0; border:0}
.loga li{display:flex}
.loga a, .loga > li > .box{display:flex; align-items:center; justify-content:center; width:100%; min-height:88px; padding:12px 16px; background:var(--card); border:1px solid var(--line); border-radius:12px; text-decoration:none; transition:transform .15s ease, box-shadow .15s ease}
.loga a:hover{transform:translateY(-2px); box-shadow:0 10px 24px rgba(var(--warm-rgb),.12); border-color:var(--peach-deep)}
.loga img, .content .loga img{max-height:56px; max-width:100%; width:auto; height:auto; object-fit:contain; display:block}
.loga .logo-zaslepka{border:0; background:transparent; min-width:0; padding:0}
.logo-zaslepka{display:grid; place-items:center; height:56px; min-width:140px; padding:0 14px; border:1px dashed var(--peach-deep); border-radius:10px; background:var(--cream); color:var(--navy); font-size:var(--fs-meta); font-weight:800; text-align:center; line-height:18px}
@media (max-width:900px){ .loga{grid-template-columns:repeat(3, minmax(0,1fr))} }
@media (max-width:560px){ .loga{grid-template-columns:repeat(2, minmax(0,1fr)); gap:8px} .loga a, .loga > li > .box{min-height:72px} .loga img{max-height:44px} }
.block-partners{margin:34px 0; padding:0}
.content > .block-partners:first-child{margin-top:0}
.block-partners > h2{margin:0 0 16px}
.content .partnerzy{list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:14px}
.content .partnerzy li{margin:0; padding:0; border:0}
.partner{position:relative; display:flex; flex-direction:column; align-items:stretch; gap:14px; height:100%; padding:20px 20px 18px; background:var(--card); border:1px solid var(--line); border-radius:14px; text-decoration:none; color:var(--ink); transition:transform .15s ease, box-shadow .15s ease}
a.partner:hover{transform:translateY(-2px); box-shadow:0 10px 24px rgba(var(--warm-rgb),.12)}
.partner .logo{display:flex; justify-content:center; align-items:center; height:72px}
.partner .logo img{max-width:200px; max-height:72px; width:auto; height:auto; object-fit:contain; display:block}
.partner .logo .logo-zaslepka{min-width:140px; height:56px}
.partner .txt{min-width:0; text-align:center}
.partner b{display:block; color:var(--navy); font-size:var(--fs-title-4); line-height:24px}
.partner .opis{display:block; margin-top:4px; color:var(--muted); font-size:var(--fs-nav); line-height:22px}
.partner .meta{display:block; margin-top:6px; color:var(--muted); font-size:var(--fs-label)}
.partner .arr{position:absolute; right:14px; bottom:10px; color:var(--peach-deep); font-weight:800}
a.partner:hover .arr{color:var(--orange)}
@media (max-width:700px){ .content .partnerzy{grid-template-columns:1fr} }
.sidebar{position:static}
.side-box{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; margin-bottom:22px}
.side-box h2{font-size:var(--fs-label); font-weight:800; letter-spacing:.11em; text-transform:uppercase; color:var(--navy); background:var(--peach); margin:0; padding:13px 20px; border:0}
.side-box ul{list-style:none; margin:0; padding:8px}
.side-box li a{display:block; padding:10px 14px; text-decoration:none; color:var(--navy); font-weight:600; font-size:var(--fs-nav); border-radius:9px; line-height:1.35}
.side-box li a:hover{background:var(--peach); color:var(--orange-deep)}
.side-box li a.is-active{background:var(--orange); color:#fff}
.side-box h2 a{color:inherit; text-decoration:none}
.side-box h2 a:hover{color:var(--orange-deep)}
.side-box.tree ul{list-style:none; margin:0; padding:0}
.side-galleries li a{display:flex; align-items:center; gap:12px; padding:8px}
.side-galleries img{flex:none; width:72px; height:48px; object-fit:cover; border-radius:8px}
.side-galleries b{display:block; font-weight:700; line-height:20px}
.side-galleries small{display:block; font-size:var(--fs-label); font-weight:500; color:var(--muted); line-height:18px}
.side-news .more-link{margin:0; padding:12px 16px 16px; border-top:1px solid var(--line)}
.side-news .more-link a{display:block; padding:10px 14px; border:1px solid var(--line); border-radius:10px; text-align:center; text-decoration:none}
.side-news .more-link a:hover{background:var(--cream)}
.demo-notice{margin:40px 0 0; padding:18px 0; background:var(--peach); color:var(--navy); text-align:center}
.demo-notice p{margin:0; font-size:var(--fs-nav); line-height:1.5}
.side-box.tree > ul{padding:8px}
.side-box.tree li a{display:block; padding:10px 14px; text-decoration:none; color:var(--navy); font-weight:600; font-size:var(--fs-nav); border-radius:9px; line-height:1.35}
.side-box.tree li a:hover{background:var(--peach); color:var(--orange-deep)}
.side-box.tree li a.is-open{color:var(--orange-deep)}
.side-box.tree li a.is-active{background:var(--orange); color:#fff}
.side-box.tree ul ul{margin:2px 0 8px 14px; padding-left:8px; border-left:2px solid var(--peach-deep)}
.side-box.tree ul ul li a{font-size:var(--fs-meta); font-weight:600; color:var(--muted); padding:8px 12px}
.side-box.tree ul ul li a:hover{color:var(--orange-deep)}
.side-box.tree ul ul li a.is-active{color:#fff}
.side-contact{padding:20px}
.side-contact p{margin:0 0 10px; font-size:var(--fs-nav); color:var(--muted); line-height:1.5}
.side-contact b{display:block; color:var(--navy); font-size:var(--fs-nav); margin-bottom:6px}
.side-contact a{color:var(--orange-deep); font-weight:700; text-decoration:none}
.month-nav{display:flex; flex-wrap:wrap; gap:8px; margin:0 0 38px}
.month-nav a{font-size:var(--fs-meta); font-weight:700; color:var(--orange-deep); text-decoration:none; background:var(--peach); padding:6px 13px; border-radius:999px}
.month-nav a:hover{background:var(--orange); color:#fff}
.cal-month{margin-top:40px; scroll-margin-top:24px}
.cal-month:first-of-type{margin-top:0}
.cal-month > h2{font-size:var(--fs-title-4); color:var(--navy); display:inline-block; padding-bottom:6px; border-bottom:2px solid var(--peach-deep); margin-bottom:16px}
.cal-event{position:relative; overflow:hidden; display:flex; align-items:stretch; background:#fff; border:1px solid var(--line); border-radius:14px; margin-bottom:12px; box-shadow:0 1px 2px rgba(var(--warm-rgb),.04)}
.cal-event::before{content:""; position:absolute; left:0; top:0; bottom:0; width:5px; z-index:1; background:var(--peach-deep)}
.cal-event.ev::before{background:var(--orange-deep)}
.cal-event.free::before{background:var(--peach-deep)}
.cal-event.brk::before{background:#C2B6A4}
.cal-event.exam::before{background:var(--navy)}
.cal-date{flex:0 0 124px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:16px; margin-left:5px; border-right:1px solid var(--line); background:var(--card)}
.cal-date .d{font-size:var(--fs-title-2); font-weight:900; color:var(--navy); line-height:1}
.cal-date .d.range{font-size:var(--fs-title-4); letter-spacing:-.01em}
.cal-date .m{font-size:var(--fs-micro); font-weight:800; letter-spacing:.04em; text-transform:uppercase; color:var(--orange-deep); margin-top:5px}
.cal-date .wd{font-size:var(--fs-micro); color:var(--muted); margin-top:3px}
.cal-body{flex:1; min-width:0; padding:15px 20px}
.cal-event .head{display:flex; justify-content:space-between; align-items:flex-start; gap:14px}
.cal-event h3{font-size:var(--fs-title-4); color:var(--navy); font-weight:800}
.cal-event .meta{margin:6px 0 0; color:var(--orange-deep); font-weight:700; font-size:var(--fs-meta)}
.cal-event .desc{margin:8px 0 0; color:var(--muted); font-size:var(--fs-nav)}
.tag{font-size:var(--fs-micro); font-weight:800; padding:5px 12px; border-radius:999px; white-space:nowrap; letter-spacing:.02em; flex:none}
.tag.ev{background:var(--orange); color:#fff}
.tag.free{background:var(--peach); color:var(--orange-deep)}
.tag.brk{background:#ECE5DA; color:var(--navy)}
.tag.exam{background:var(--navy); color:#fff}
footer.site{background:var(--dark); color:var(--on-dark); margin-top:auto}
footer.site a{color:var(--on-dark); text-decoration:none}
footer.site a:hover{color:var(--orange-2)}
.foot-main{max-width:var(--content); margin:0 auto; padding:52px 24px 40px; display:grid;
  grid-template-columns:1.4fr repeat(var(--foot-cols, 2), minmax(0, 1fr)); gap:44px}
.foot-col h3{color:#fff; font-size:var(--fs-label); font-weight:800; letter-spacing:.12em; text-transform:uppercase; margin:0 0 18px}
.foot-col ul{list-style:none; margin:0; padding:0}
.foot-col li{margin-bottom:11px}
.foot-col li a{font-size:var(--fs-nav); font-weight:600; display:inline-flex; align-items:center; gap:8px}
.foot-col li a::before{content:"›"; color:var(--orange-2); font-weight:800}
.foot-name span{display:inline}
@media (max-width:640px){ .foot-name span{display:block} }
.foot-name{color:#fff; font-weight:800; font-size:var(--fs-title-4); line-height:1.35; margin:0 0 16px}
.foot-data{margin:0; font-size:var(--fs-nav); line-height:1.85}
.foot-data .row{display:flex; gap:11px; align-items:flex-start; margin-bottom:9px}
.foot-data .ic{flex:none; width:30px; height:30px; border-radius:8px; background:rgba(255,255,255,.09); color:var(--orange-2); display:grid; place-items:center; font-size:var(--fs-nav)}
.foot-data b{color:#fff; font-weight:700}
.foot-hours{margin-top:18px; padding-top:18px; border-top:1px solid rgba(255,255,255,.12); font-size:var(--fs-meta); color:var(--on-dark-soft)}
.foot-hours b{display:block; color:#fff; font-weight:700; margin-bottom:4px; font-size:var(--fs-nav)}
.foot-bar{border-top:1px solid rgba(255,255,255,.12); background:var(--dark-deep)}
.foot-bar-in{max-width:var(--content); margin:0 auto; padding:20px 24px; display:flex; flex-wrap:wrap; gap:14px 28px; align-items:center; justify-content:space-between; font-size:var(--fs-meta); color:var(--on-dark-muted)}
.foot-bar-in .demo{background:rgba(255,255,255,.12); color:#fff; font-weight:700; padding:5px 13px; border-radius:999px; font-size:var(--fs-label)}
@media (max-width:1100px){
  .layout{grid-template-columns:1fr; gap:0}
  .sidebar{margin-top:44px}
  .side-box{margin-bottom:18px}
}
@media (max-width:960px){
  .skroty{grid-template-columns:1fr 1fr}
  .liczby{grid-template-columns:1fr 1fr; gap:28px}
  .foot-main{grid-template-columns:1fr 1fr; gap:36px}
  .foot-col:first-child{grid-column:1 / -1}
}
@media (max-width:880px){ .news{grid-template-columns:1fr 1fr} }
@media (max-width:768px){
  nav.main > ul{display:none}
  .menubar{display:block}
  .topcall{display:none}
  .callbtn{display:grid}
  .news{grid-template-columns:1fr}
  .cal-date{flex:0 0 92px; padding:12px 8px}
  .cal-date .d{font-size:var(--fs-title-3)}
}
@media (max-width:900px){
  .arrows{top:auto; bottom:14px; height:auto; padding:0 16px}
  .arrows button{width:36px; height:36px; font-size:var(--fs-body)}
  .dots{left:50%; right:auto; transform:translateX(-50%); bottom:27px}
  .slide .cap{padding-bottom:66px}
}
@media (max-width:640px){
  .skroty{grid-template-columns:1fr}
  .liczby{grid-template-columns:1fr 1fr; padding:26px}
  .slide .cap{max-width:90%}
  .slide::after{background:linear-gradient(0deg, rgba(var(--shade-rgb),.85) 0%, rgba(var(--shade-rgb),.2) 60%)}
  .brand-name{font-size:var(--fs-title-4)}
  .foot-main{grid-template-columns:1fr; gap:34px; padding:40px 24px 32px}
  .foot-col:first-child{grid-column:auto}
  .cal-event{flex-direction:column}
  .cal-date{flex:none; flex-direction:row; gap:8px; justify-content:flex-start; border-right:0; border-bottom:1px solid var(--line); padding:10px 16px}
  .cal-date .m,.cal-date .wd{margin-top:0}
}
@media (max-width:640px){
  .block-hero .hero, .hero.block-hero{height:360px; background:var(--tint)}
  .block-hero .slide > img, .block-hero .slide picture, .block-hero .slide__side{position:absolute; top:0; left:0; right:0; bottom:auto; width:auto; height:160px}
  .block-hero .slide__side img{height:100%}
  .block-hero .slide::after{content:none}
  .block-hero .slide .cap{top:160px; right:0; bottom:0; max-width:none; padding:14px 20px 34px; overflow:hidden}
  .content .block-hero .cap h2{font-size:var(--fs-title-3); margin:4px 0 6px; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden}
  .block-hero .slide .cap p{line-height:24px; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden}
  .block-hero .slide--photo{background:var(--tint)}
  .block-hero .slide--photo .cap, .content .block-hero .slide--photo .cap h2, .block-carousel .slide--photo .cap small{color:var(--navy)}
  .block-hero .slide--photo .cap p{color:var(--ink); opacity:1}
  .block-hero .dots{bottom:12px}
  .block-hero .dots button{background:var(--peach-deep)}
  .block-hero .dots button.is-on{background:var(--orange-2)}
  .block-hero .hero.no-controls .slide .cap, .hero.block-hero.no-controls .slide .cap{padding-bottom:14px}
}
@media (prefers-reduced-motion:reduce){*{transition:none !important}}
@media print{
  header.site, footer.site, .sidebar, .month-nav, .skroty{display:none}
  body{background:#fff}
  .layout{grid-template-columns:1fr}
  a{text-decoration:none; color:#000}
}
.month-nav a{display:inline-flex; align-items:center; gap:7px}
.month-nav a.is-on{background:var(--orange); color:#fff}
.month-nav .lb{font-size:var(--fs-micro); font-weight:800; background:rgba(0,0,0,.10); padding:1px 7px; border-radius:999px}
.month-nav a.is-on .lb{background:rgba(255,255,255,.28)}
.filtr-info{background:var(--peach); border-radius:12px; padding:12px 18px; font-size:var(--fs-nav); color:var(--navy); margin:0 0 26px}
.filtr-info a{color:var(--orange-deep); font-weight:800}
.news-lista{grid-template-columns:repeat(3,1fr)}
.post .termin{display:flex; align-items:center; gap:7px; margin:0 0 12px; font-size:var(--fs-meta); color:var(--orange-deep); font-weight:600; line-height:1.3}
.post .termin svg{flex:none; width:15px; height:15px}
.post .termin b{font-weight:800; color:var(--navy)}
.wpis-meta{display:flex; flex-wrap:wrap; gap:10px 22px; align-items:center; margin:0 0 24px; font-size:var(--fs-meta); color:var(--muted)}
.wpis-meta strong{color:var(--navy); font-weight:700}
.wpis-meta .termin-badge{display:inline-flex; align-items:center; gap:7px; background:var(--peach); color:var(--navy); padding:6px 14px; border-radius:999px}
.wpis-meta .termin-badge svg{flex:none; width:15px; height:15px; color:var(--orange-deep)}
.wpis-meta .termin-badge b{font-weight:800}
.listen{display:flex; flex-wrap:wrap; align-items:center; gap:10px 12px; margin:-8px 0 26px}
.listen[hidden]{display:none}
.listen-slot{margin:-8px 0 26px}
.listen-slot .listen{margin:0}
.listen.is-floating{position:fixed; z-index:85; left:16px; bottom:16px; max-width:calc(100% - 92px); padding:8px; border:1px solid var(--line); border-radius:29px; background:var(--card); box-shadow:var(--shadow)}
.listen.is-floating .listen-time{padding-right:10px}
@media (min-width:1360px){ .listen.is-floating{left:calc((100vw - var(--content)) / 2 + 24px)} }
@media (max-width:479px){ .listen.is-floating .listen-time{display:none} }
@media print{ .listen{display:none} }
.listen button{display:inline-flex; align-items:center; justify-content:center; gap:8px; height:42px; padding:0 18px 0 14px; border:1px solid var(--peach-deep); border-radius:21px; background:var(--card); color:var(--navy); font:inherit; font-size:var(--fs-meta); font-weight:700; cursor:pointer; transition:background .18s ease}
.listen button[hidden]{display:none}
.listen button:hover{background:var(--peach)}
.listen button:focus-visible{outline:3px solid var(--orange); outline-offset:2px}
.listen button svg{flex:none; color:var(--orange-deep)}
.listen .i-pause, .listen .i-play, .listen .t-pause, .listen .t-play,
.listen.is-playing .i-listen, .listen.is-playing .t-listen, .listen.is-paused .i-listen, .listen.is-paused .t-listen{display:none}
.listen .i-listen, .listen.is-playing .i-pause, .listen.is-paused .i-play{display:inline-flex}
.listen.is-playing .t-pause, .listen.is-paused .t-play{display:inline}
.listen-time{font-size:var(--fs-meta); color:var(--muted); font-variant-numeric:tabular-nums}
.listen .i-close{display:none}
.listen .i-stop{display:inline-flex}
.listen-error{font-size:var(--fs-meta); font-weight:600; color:var(--orange-deep)}
.listen.is-floating .listen-stop{order:3; width:42px; padding:0}
.listen.is-floating .listen-stop .i-stop{display:none}
.listen.is-floating .listen-stop .i-close{display:inline-flex}
.listen.is-floating .listen-stop svg{color:var(--navy)}
.listen.is-floating .t-stop{position:absolute; width:1px; height:1px; margin:-1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap}
.listen.is-floating .listen-msg{order:4}
.listen.is-floating .listen-msg:has(> :not([hidden])){flex-basis:100%; padding:0 10px 4px}
::highlight(listen){background-color:var(--peach); color:var(--ink)}
.is-reading{background:var(--tint); box-shadow:0 0 0 6px var(--tint); border-radius:4px}
.wpis-foto{border-radius:var(--radius); overflow:hidden; margin:0 0 26px; aspect-ratio:16/7; background:var(--peach)}
.wpis-foto img{width:100%; height:100%; object-fit:cover; display:block}
.wpis-nawigacja{display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:44px}
.wpis-nawigacja a{background:var(--card); border:1px solid var(--line); border-radius:14px; padding:16px 20px; text-decoration:none; transition:transform .18s ease, box-shadow .18s ease}
.wpis-nawigacja a:hover{transform:translateY(-3px); box-shadow:var(--shadow)}
.wpis-nawigacja a span{display:block; font-size:var(--fs-label); font-weight:800; color:var(--orange-deep); letter-spacing:.03em; margin-bottom:5px}
.wpis-nawigacja a b{display:block; color:var(--navy); font-weight:700; font-size:var(--fs-nav); line-height:1.3}
.wpis-nawigacja a.next{text-align:right}
.mapa-sekcja{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:24px 28px; margin-bottom:20px}
.mapa-sekcja > h2{font-size:var(--fs-title-4); margin:0 0 14px; padding-bottom:8px; border-bottom:2px solid var(--peach-deep); display:inline-block}
.mapa-sekcja ul{list-style:none; margin:0; padding:0; columns:2; column-gap:34px}
.mapa-sekcja li{margin-bottom:9px; break-inside:avoid}
.mapa-sekcja li a{color:var(--navy); text-decoration:none; font-weight:600; font-size:var(--fs-nav)}
.mapa-sekcja li a:hover{color:var(--orange-deep)}
.mapa-sekcja li.p3{padding-left:18px}
.mapa-sekcja li.p3 a{color:var(--muted); font-weight:500; font-size:var(--fs-meta)}
.mapa-sekcja li.p3 a::before{content:"– "; color:var(--peach-deep)}
@media (max-width:880px){ .news-lista{grid-template-columns:1fr 1fr} }
@media (max-width:768px){
  .news-lista{grid-template-columns:1fr}
  .wpis-nawigacja{grid-template-columns:1fr}
  .wpis-nawigacja a.next{text-align:left}
  .mapa-sekcja ul{columns:1}
}
body.menu-vertical nav.main.bar-only{display:none}
body.menu-vertical .layout{grid-template-columns:minmax(0,1fr) 300px; gap:40px}
body.menu-vertical .vmenu{background:var(--bar-solid); border-radius:14px; overflow:hidden; padding:6px; margin-bottom:22px}
body.menu-vertical .vmenu > .mlvl1{list-style:none; margin:0; padding:0}
body.menu-vertical .vmenu .msub{list-style:none}
body.menu-vertical .vmenu .mitem + .mitem{border-top:1px solid rgba(255,255,255,.14); margin-top:0}
body.menu-vertical .vmenu .mrow{display:flex; align-items:stretch; gap:0; background:transparent; border:0; border-radius:10px; overflow:hidden; transition:background .15s}
body.menu-vertical .vmenu .mrow:hover{background:var(--bar1)}
body.menu-vertical .vmenu .mrow .mlink{flex:1; display:flex; align-items:center; height:auto; min-height:46px; padding:0 14px; font-weight:700; font-size:var(--fs-nav); color:#fff; background:transparent; text-decoration:none; text-shadow:0 1px 2px rgba(0,0,0,.16); border-radius:0}
body.menu-vertical .vmenu .mrow .mlink:hover, body.menu-vertical .vmenu .mrow .mlink.is-active{background:transparent}
body.menu-vertical .vmenu .mtog{display:grid; place-items:center; width:46px; height:auto; min-height:46px; padding:0; border:0; border-left:1px solid rgba(255,255,255,.2); background:transparent; color:#fff; cursor:pointer; border-radius:0}
body.menu-vertical .vmenu .mtog:hover{background:transparent}
body.menu-vertical .vmenu .mtog svg{width:16px; height:16px; transition:transform .2s}
body.menu-vertical .vmenu .mitem.is-open .mtog svg{transform:rotate(180deg)}
body.menu-vertical .vmenu .mitem.is-open > .mrow{background:var(--bar2); border-radius:10px 10px 0 0}
body.menu-vertical .vmenu .mitem.is-current > .mrow, body.menu-vertical .vmenu .mitem.is-current > .mrow:hover{background:var(--bar2)}
body.menu-vertical .vmenu .msub{display:block; max-height:0; overflow:hidden; margin:0; padding:0; border:0; background:#fff; border-radius:0 0 10px 10px; transition:max-height .22s ease, padding .22s ease}
body.menu-vertical .vmenu .mitem.is-open .msub{max-height:1400px; padding:8px}
body.menu-vertical .vmenu .msub a{display:block; padding:10px 12px; color:var(--navy); text-decoration:none; font-weight:600; font-size:var(--fs-nav); border-radius:9px; line-height:1.35}
body.menu-vertical .vmenu .msub a:hover{background:var(--peach); color:var(--orange-deep)}
body.menu-vertical .vmenu .msub a.is-active{background:var(--orange); color:#fff}
@media (max-width:900px){
  body.menu-vertical nav.main.bar-only{display:block}
  body.menu-vertical nav.main.bar-only .menubar{display:block; padding:0}
  body.menu-vertical .burger{width:100%; justify-content:flex-start; padding:13px 20px; min-height:52px}
  body.menu-vertical .layout{grid-template-columns:1fr}
  body.menu-vertical .vmenu{display:none}
}
.banners{display:grid; gap:12px; margin-bottom:22px}
.banner{display:grid; place-items:center; align-content:center; gap:2px; border:2px dashed var(--peach-deep); border-radius:14px; background:var(--card); color:var(--muted); text-decoration:none; text-align:center; padding:10px}
.banner .size{font-weight:800; color:var(--navy)}
.banner .description{font-size:var(--fs-label)}
.foot-short{max-width:var(--content); margin:0 auto; padding:34px 24px 26px; display:flex; flex-direction:column; align-items:flex-start; gap:16px}
.foot-short-data p{margin:0; font-size:var(--fs-nav)}
.foot-short-data .foot-name{margin-bottom:6px}
.foot-short-links{list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:8px 22px}
.foot-short-links a{font-weight:700; font-size:var(--fs-nav)}
.footer-minimal .foot-bar{border-top:0}
.footer-minimal .foot-bar-in{padding:22px 24px}
.footer-minimal b{color:#fff}
.foot-min-links{display:flex; flex-wrap:wrap; gap:8px 18px}
.foot-min-links a{font-weight:700}
:root[data-theme="navy"]{
  --orange:#B5822A; --orange-deep:#8F6418; --orange-2:#D6A64F;
  --peach:#F5ECDA; --peach-deep:#E5CE9C; --cream:#F5F6F9; --line:#E1E5ED;
  --bar1:#2B3E66; --bar2:#16233F; --bar-solid:#223459;
  --page-bg:linear-gradient(180deg, #E8ECF4 0, #F2F4F8 640px, #F5F6F9 1600px);
  --theme-color:#E8ECF4;
  --header-bg:transparent; --hover-bg:#F8F9FC; --tint:#FBF5E8;
  --warm-rgb:20,30,60; --shade-rgb:12,20,40; --accent-rgb:181,130,42;
  --shadow:0 1px 2px rgba(20,30,60,.05), 0 14px 34px rgba(30,50,100,.12);
}
:root[data-theme="green"]{
  --orange:#3F8F5C; --orange-deep:#2E7148; --orange-2:#5AAB78;
  --peach:#DDEFE3; --peach-deep:#B8DDC6; --cream:#F5F8F3; --line:#E1EBE3;
  --bar1:#2F6E48; --bar2:#22543A; --bar-solid:#2A6642;
  --page-bg:linear-gradient(180deg, #E4EFE4 0, #EFF5EE 640px, #F5F8F3 1600px);
  --theme-color:#E4EFE4;
  --header-bg:transparent; --hover-bg:#F7FAF7; --tint:#EDF6EF;
  --dark:#1E3A2B; --dark-deep:#152B1F;
  --on-dark:#D6E3DA; --on-dark-soft:#A9BCAF; --on-dark-muted:#93A898; --on-dark-light:#C2D3C7;
  --warm-rgb:20,50,35; --shade-rgb:12,34,22; --accent-rgb:63,143,92;
  --shadow:0 1px 2px rgba(20,60,40,.05), 0 14px 34px rgba(40,120,80,.12);
}
:root[data-theme="sky"]{
  --orange:#2F7BC4; --orange-deep:#1F62A3; --orange-2:#5698D6;
  --peach:#DDEBF8; --peach-deep:#B5D2EE; --cream:#EEF5FC; --line:#DCE7F2;
  --bar1:#3D84CC; --bar2:#22609E; --bar-solid:#3278BF;
  --page-bg:linear-gradient(180deg, #E3EEFA 0, #F0F6FD 640px, #F7FAFE 1600px, #FAFCFF 100%);
  --theme-color:#E3EEFA;
  --header-bg:transparent; --hover-bg:#F3F8FD; --tint:#EAF3FC;
  --dark:#183B63; --dark-deep:#112D4D;
  --on-dark:#D6E4F2; --on-dark-soft:#A9C0D8; --on-dark-muted:#93ABC6; --on-dark-light:#C2D5EA;
  --warm-rgb:30,70,120; --shade-rgb:12,32,58; --accent-rgb:47,123,196;
  --shadow:0 1px 2px rgba(30,70,120,.05), 0 14px 34px rgba(40,100,170,.12);
}
:root.mourning{
  --navy:#272727; --navy-deep:#1C1C1C;
  --orange:#6E6E6E; --orange-deep:#5A5A5A; --orange-2:#9A9A9A;
  --peach:#E7E7E7; --peach-deep:#D0D0D0;
  --cream:#F7F7F7; --ink:#2B2B2B; --muted:#767676; --line:#E5E5E5;
  --bar1:#6D6D6D; --bar2:#515151; --bar-solid:#616161;
  --shadow:0 1px 2px rgba(0,0,0,.05), 0 14px 34px rgba(0,0,0,.10);
  --page-bg:var(--cream); --header-bg:var(--cream); --hover-bg:#FBFBFB; --tint:#F5F5F5; --theme-color:#F7F7F7;
  --warm-rgb:0,0,0; --shade-rgb:20,20,20; --accent-rgb:110,110,110;
  --dark:var(--navy); --dark-deep:var(--navy-deep);
}
html.mourning .brand-mark, html.mourning .loga img, html.mourning .partner .logo img{filter:grayscale(1)}
html.mourning .content tbody tr:hover, html.mourning .children li a:hover, html.mourning .block li a:hover,
html.mourning .block.bells tbody tr:hover, html.mourning .block-link:hover, html.mourning .results li:hover{background:#FBFBFB}
html.mourning .block-info.important, html.mourning .alert, html.mourning .alert-box ul{background:#F5F5F5}
html.mourning .tag.brk{background:#E6E6E6}
html.mourning .cal-event.brk::before{background:#B7B7B7}
html.mourning .demo-box-in{background:#F0F0F0}
html.mourning .dzien.dzis{box-shadow:0 0 0 2px rgba(0,0,0,.10)}
html.mourning .slide::after{background:linear-gradient(90deg, rgba(20,20,20,.80) 0%, rgba(20,20,20,.40) 46%, rgba(20,20,20,0) 76%)}
@media (max-width:640px){ html.mourning .slide::after{background:linear-gradient(0deg, rgba(20,20,20,.85) 0%, rgba(20,20,20,.2) 60%)} }
html.mourning .osoba-dialog::backdrop, html.mourning .archive-dialog::backdrop, html.mourning .search-dialog::backdrop{background:rgba(20,20,20,.45)}
html.mourning .alert-popup::backdrop{background:rgba(20,20,20,.55)}
html.mourning .z0{background:#272727} html.mourning .z1{background:#616161} html.mourning .z2{background:#575757} html.mourning .z3{background:#535353}
html.mourning .z4{background:#5C5C5C} html.mourning .z5{background:#707070} html.mourning .z6{background:#6B6B6B} html.mourning .z7{background:#4F4F4F}
html.mourning footer.site, html.mourning footer.site a{color:#DEDEDE}
html.mourning .foot-hours{color:#B5B5B5}
html.mourning .foot-bar-in, html.mourning .foot-langs .lang-globe, html.mourning .foot-data-line > span + span::before{color:#A0A0A0}
html.mourning .foot-bar-in .cs, html.mourning .droga-lista li.teraz .rok-lbl, html.mourning .kwadrat .hover i{color:#CDCDCD}
.demo-box{max-width:var(--content); margin:48px auto 44px; padding:0 24px}
.demo-box-in{padding:24px 28px; background:#FDEEE0; color:var(--navy); border-radius:14px; border-left:5px solid var(--orange); border-top:1px solid var(--line); border-bottom:1px solid var(--line); border-right:1px solid var(--line)}
.demo-box-tekst{max-width:500px}
.demo-box-tytul{margin:0 0 8px; font-size:var(--fs-label); font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--orange-deep)}
.demo-box-tekst p{margin:0 0 6px; color:var(--navy); font-size:var(--fs-nav); line-height:1.55}
.demo-box-tekst p:last-child{margin-bottom:0}
@media print{ .demo-box{display:none} }
.search-btn{display:inline-flex; align-items:center; gap:8px; height:40px; padding:0 14px 0 12px; border:1px solid var(--line); border-radius:999px; background:transparent; color:var(--navy); font:inherit; font-weight:700; font-size:var(--fs-nav); cursor:pointer; transition:border-color .15s ease, background .15s ease}
.search-btn:hover{border-color:var(--peach-deep); background:var(--peach)}
.search-btn svg{width:18px; height:18px; color:var(--orange-deep)}
@media (max-width:1199px){ .search-btn{width:44px; height:44px; padding:0; justify-content:center; border-radius:12px} .search-btn .txt{display:none} }
.lang-pick{position:relative}
.lang-pick__btn{display:inline-flex; align-items:center; gap:8px; height:40px; padding:0 14px 0 12px; border:1px solid var(--line); border-radius:999px; color:var(--navy); font-weight:700; font-size:var(--fs-nav); cursor:pointer; list-style:none; white-space:nowrap; transition:border-color .15s ease, background .15s ease}
.lang-pick__btn::-webkit-details-marker{display:none}
.lang-pick__btn:hover, .lang-pick[open] .lang-pick__btn{border-color:var(--peach-deep); background:var(--peach)}
.lang-pick__btn svg{width:18px; height:18px; color:var(--orange-deep)}
.lang-pick__menu{position:absolute; z-index:120; top:calc(100% + 8px); right:0; min-width:200px; margin:0; padding:8px; list-style:none; background:var(--card); border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow)}
.lang-pick__menu:has(> li:nth-child(7)){columns:2; column-gap:4px; width:380px; max-width:calc(100vw - 32px)}
.lang-pick__menu li{break-inside:avoid}
@media (min-width:1200px){ .lang-pick__menu{right:auto; left:0} }
@media (max-width:600px){ .lang-pick{position:static} .lang-pick__menu, .lang-pick__menu:has(> li:nth-child(7)){max-width:calc(100vw - 40px)} }
.lang-pick__menu a{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 12px; border-radius:10px; color:var(--navy); font-weight:600; font-size:var(--fs-nav); text-decoration:none}
.lang-pick__menu a:hover{background:var(--peach)}
.lang-pick__menu a[aria-current]{font-weight:800}
.lang-pick__check{color:var(--orange-deep)}
@media (max-width:1199px){ .lang-pick__btn{width:44px; height:44px; padding:0; justify-content:center; border-radius:12px} .lang-pick__current{display:none} }
@media (max-width:768px){ .topbar:has(.lang-pick) .brand{padding-right:164px} .topbar:has(.lang-pick) .brand-text{margin-right:-164px} .topbar:has(.lang-pick) .brand:not(:has(.brand-mark)):not(:has(.kir)) .brand-text{margin-right:0} }
.lang-hint{background:var(--navy); color:#fff}
.lang-hint__in{max-width:var(--content); margin:0 auto; padding:10px 24px; display:flex; flex-wrap:wrap; align-items:center; gap:10px 18px; font-size:var(--fs-meta)}
.lang-hint__text{font-weight:600}
.lang-hint__go{padding:6px 14px; border-radius:999px; background:#fff; color:var(--navy); font-weight:800; text-decoration:none}
.lang-hint__go:hover{background:var(--peach)}
.lang-hint__close{margin-inline-start:auto; width:36px; height:36px; border:0; border-radius:50%; background:transparent; color:#fff; font-size:var(--fs-title-4); cursor:pointer}
.lang-hint__close:hover{background:rgba(255,255,255,.14)}
.foot-langs{border-top:1px solid rgba(255,255,255,.12); background:var(--dark-deep)}
.foot-langs__in{max-width:var(--content); margin:0 auto; padding:14px 24px; display:flex; flex-wrap:wrap; align-items:center; gap:10px}
.foot-langs .lang-globe{width:20px; height:20px; color:var(--on-dark-muted)}
.foot-langs ul{display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none}
@media (min-width:1200px){ .foot-langs ul:has(> li:nth-child(11)){display:grid; grid-template-columns:repeat(10, auto)} .foot-langs ul:has(> li:nth-child(11)) .foot-langs__item{width:100%; justify-content:center} }
.foot-langs__item{display:inline-flex; align-items:center; height:36px; padding:0 14px; border:1px solid rgba(255,255,255,.22); border-radius:999px; color:#fff; font-weight:600; font-size:var(--fs-meta); text-decoration:none}
.foot-langs a.foot-langs__item:hover{background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.4)}
.foot-langs__item[aria-current]{background:#fff; border-color:#fff; color:var(--navy); font-weight:800}
.search-dialog{width:min(680px, calc(100vw - 32px)); max-height:min(80vh, 720px); margin:8vh auto 0; padding:0; border:1px solid var(--line); border-radius:18px; background:var(--card); color:var(--ink); box-shadow:0 24px 60px rgba(var(--warm-rgb),.28); overflow:hidden}
.search-dialog::backdrop{background:rgba(27,40,69,.45); backdrop-filter:blur(2px)}
.search-form{display:flex; gap:8px; align-items:center; padding:14px 14px 12px; border-bottom:1px solid var(--line)}
.search-form input[type="search"]{flex:1; min-width:0; height:46px; padding:0 14px; border:1px solid var(--line); border-radius:12px; font:inherit; font-size:var(--fs-body); color:var(--ink); background:var(--cream)}
.search-form input[type="search"]:focus{outline:none; border:2px solid var(--orange); padding:0 13px}
.search-form button{height:46px; padding:0 18px; border:0; border-radius:12px; background:var(--orange); color:#fff; font:inherit; font-weight:800; cursor:pointer}
.search-form button:hover{background:var(--orange-deep)}
.search-form .close{width:46px; flex:none; padding:0; background:var(--peach); color:var(--orange-deep); font-size:var(--fs-title-3); line-height:1}
.search-form .close:hover{background:var(--bar-solid); color:#fff}
@media (max-width:640px){
  .search-dialog{width:calc(100vw - 16px); margin-top:8px; max-height:calc(100vh - 16px)}
  .search-form{flex-wrap:wrap; padding:12px}
  .search-form input[type="search"]{flex:1 1 100%; order:1; font-size:16px}
  .search-form button[type="submit"]{order:2; flex:1}
  .search-form .close{order:3}
  .search-dialog .results{max-height:calc(100vh - 16px - 150px)}
}
.search-info{margin:0; padding:10px 18px 0; font-size:var(--fs-meta); color:var(--muted)}
.search-dialog .results{max-height:calc(min(80vh,720px) - 120px); overflow-y:auto}
.results{list-style:none; margin:0; padding:8px}
.results li{padding:12px 12px 13px; border-radius:12px}
.results li:hover{background:var(--hover-bg)}
.results li a{display:block; font-weight:800; color:var(--navy); text-decoration:none; font-size:var(--fs-body); line-height:1.3}
.results li a:hover{color:var(--orange-deep)}
.results .section{display:inline-block; margin-top:3px; font-size:var(--fs-micro); font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--orange-deep)}
.results p{margin:5px 0 0; font-size:var(--fs-meta); color:var(--muted); line-height:1.5}
.results mark{background:var(--peach); color:var(--navy); padding:0 2px; border-radius:3px}
main .search-form{border:0; padding:0; margin:0 0 22px}
.search-page{max-width:760px}
.search-page .results{padding:0}
.search-page .results li{padding:14px 0; border-radius:0; border-top:1px solid var(--line)}
.search-page .results li:hover{background:transparent}
.search-btn{text-decoration:none}
main .results{padding:0}
main .results li{padding:14px 0; border-bottom:1px solid var(--line); border-radius:0}
main .results li:hover{background:transparent}
.foot-bar-in .cs{display:inline-flex; align-items:center; gap:6px; color:var(--on-dark-light); text-decoration:none; font-size:var(--fs-meta)}
.foot-bar-in .cs b{color:#fff; font-weight:800}
.foot-bar-in .cs:hover b{color:var(--orange-2)}
.block.siblings > h2 a{color:var(--navy); text-decoration:none}
.block.siblings > h2 a:hover{color:var(--orange-deep)}
.block.dok li a .ic svg{width:18px; height:18px}
.block.dok li a .meta{font-weight:500}
.foot-data-line{display:flex; flex-wrap:wrap; gap:4px 0}
.foot-data-line > span + span::before{content:"·"; margin:0 8px; color:var(--on-dark-muted)}
.foot-data-line .email a{overflow-wrap:anywhere}
@media (max-width:640px){
  .foot-short{padding:30px 20px 22px}
  .foot-data-line{display:block}
  .foot-data-line > span{display:block; line-height:1.7}
  .foot-data-line > span + span::before{content:none}
  .foot-short-links{display:block; width:100%; margin-top:6px}
  .foot-short-links li{border-top:1px solid rgba(255,255,255,.1)}
  .foot-short-links li:last-child{border-bottom:1px solid rgba(255,255,255,.1)}
  .foot-short-links a{display:block; padding:11px 0}
  .footer-short .foot-bar-in{justify-content:center; text-align:center; padding:18px 20px}
  .footer-short .foot-bar-in > span:empty{display:none}
  .foot-bar-in .cs{display:inline; line-height:1.6}
  .foot-bar-in .cs b{display:inline}
}
.tw{max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; margin:0 0 18px}
.layout > main, .layout > .sidebar{min-width:0}
.content img, .content svg, .content iframe{max-width:100%; height:auto}
.content p, .content li{overflow-wrap:anywhere}
.tw > table{width:100%}
.tw td, .tw th{white-space:normal; overflow-wrap:normal; min-width:7em}
@media (max-width:640px){
  .tw td, .tw th{min-width:0; hyphens:auto; overflow-wrap:anywhere}
  .tw.stack{border:0; border-radius:0; background:none; overflow:visible}
  .tw.stack table, .tw.stack tbody, .tw.stack tr, .tw.stack td, .tw.stack th{display:block; width:auto}
  .tw.stack thead{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0)}
  .tw.stack caption{display:block; border:1px solid var(--line); border-radius:12px; margin:0 0 12px}
  .tw.stack tr{border:1px solid var(--line); border-radius:12px; background:var(--card); margin:0 0 12px; padding:8px 0}
  .tw.stack tbody tr:last-child td, .tw.stack td, .tw.stack th{border-bottom:0; padding:5px 15px}
  .tw.stack tr > :first-child{font-weight:800; color:var(--navy)}
  .tw.stack td[data-label]::before{content:attr(data-label); display:block; font-size:var(--fs-meta); font-weight:700; color:var(--orange-deep)}
}
@media (max-width:1100px){
  .menubar{padding:0}
  .burger{width:100%; justify-content:flex-start; padding:13px 20px; min-height:52px}
  .mrow .mlink{padding:0 12px; min-height:52px; display:flex; align-items:center}
  .mtog{min-height:52px}
  .msub{display:block; max-height:0; overflow:hidden; margin:0 0 0 0; padding:0; border:0; transition:max-height .22s ease, padding .22s ease, margin .22s ease}
  .mitem.is-open .msub{max-height:1400px; padding:6px; margin:0 0 8px}
  .mitem.is-open .mrow .mlink{background:var(--peach); border-radius:10px 10px 0 0}
  .mitem.is-open .mrow .mlink.is-active{background:var(--orange); color:#fff}
  .mitem.is-open .mrow .mtog{background:var(--peach); border-radius:0 10px 0 0}
  .mitem.is-open .msub{border:1px solid var(--peach-deep); border-top:0; border-radius:0 0 10px 10px; background:var(--card)}
  .mrow{gap:0}
  .mitem.is-open .mrow{gap:0}
  .msub a{padding:11px 12px; color:var(--navy)}
}
@media (max-width:640px){
  .topbar{position:relative; display:block; padding:14px 20px}
  .top-actions{position:absolute; top:14px; right:20px; gap:8px}
  .brand{display:grid; grid-template-columns:repeat(3, auto); justify-content:start; align-items:center; column-gap:8px; row-gap:12px; padding-right:110px}
  .brand-text{grid-column:1 / -1; margin-right:-110px}
  .brand:not(:has(.brand-mark)):not(:has(.kir)){min-height:44px; align-content:center}
  .brand:not(:has(.brand-mark)):not(:has(.kir)) .brand-text{margin-right:0}
  .brand-name{font-size:var(--fs-body); line-height:1.2}
  .search-btn{width:44px; height:44px; border-radius:12px}
  .callbtn{display:grid}
  .topcall{display:none}
}
.layout--wide{grid-template-columns:minmax(0,1fr)}
.grono-zespol{margin:34px 0 0}
.grono-zespol > h2{font-size:var(--fs-title-3); margin:0 0 14px; padding-bottom:8px; border-bottom:2px solid var(--peach-deep); display:inline-block}
.grono{list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fill, minmax(230px, 1fr)); gap:14px}
.osoba{display:flex; align-items:center; gap:14px; width:100%; text-align:left; padding:14px 16px; background:var(--card); border:1px solid var(--line); border-radius:14px; font:inherit; color:var(--ink); cursor:pointer; transition:transform .18s ease, box-shadow .18s ease}
.osoba:hover{transform:translateY(-2px); box-shadow:var(--shadow)}
.osoba:focus-visible{outline:3px solid var(--orange); outline-offset:2px}
.monogram{flex:none; width:52px; height:52px; border-radius:50%; display:grid; place-items:center; font-weight:800; font-size:var(--fs-title-4); color:#fff; letter-spacing:.02em}
.osoba .txt{min-width:0}
.osoba b{display:block; color:var(--navy); font-size:var(--fs-body); line-height:1.25}
.osoba span{display:block; color:var(--muted); font-size:var(--fs-meta); margin-top:3px; line-height:1.35}
.osoba .klasa{display:inline-block; margin-top:6px; padding:2px 9px; border-radius:999px; background:var(--peach); color:var(--orange-deep); font-size:var(--fs-micro); font-weight:800}
.z0{background:#1B2845} .z1{background:#B04F2A} .z2{background:#2A6642} .z3{background:#265A96} .z4{background:#7A4E8C} .z5{background:#9F6B12} .z6{background:#3E7C86} .z7{background:#6B4A2B}
.osoba-dialog{width:min(520px, calc(100vw - 32px)); padding:0; border:1px solid var(--line); border-radius:18px; background:var(--card); color:var(--ink); box-shadow:0 24px 60px rgba(var(--warm-rgb),.28)}
.osoba-dialog::backdrop{background:rgba(27,40,69,.45)}
.osoba-dialog .glowa{display:flex; align-items:center; gap:16px; padding:22px 24px 16px; border-bottom:1px solid var(--line)}
.osoba-dialog .glowa .monogram{width:64px; height:64px; font-size:var(--fs-title-3)}
.osoba-dialog h2{font-size:var(--fs-title-3); margin:0}
.osoba-dialog .rola{color:var(--muted); margin:4px 0 0}
.osoba-dialog .cialo{padding:18px 24px 22px}
.osoba-dialog dl{margin:0; display:grid; grid-template-columns:auto 1fr; gap:8px 16px}
.osoba-dialog dt{font-size:var(--fs-label); font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--orange-deep); padding-top:2px}
.osoba-dialog dd{margin:0; color:var(--ink)}
.osoba-dialog .close{position:absolute; top:12px; right:12px; width:40px; height:40px; border:0; border-radius:10px; background:var(--peach); color:var(--orange-deep); font-size:var(--fs-title-3); cursor:pointer}
.osoba-dialog .close:hover{background:var(--bar-solid); color:#fff}
.osoba-dialog .uwaga{margin:14px 0 0; font-size:var(--fs-meta); color:var(--muted)}
.grono li{display:flex}
.osoba{height:100%}
.osoba .monogram, .osoba-dialog .monogram{display:grid; place-items:center; margin:0; color:#fff; font-size:var(--fs-title-4); line-height:1; text-align:center}
.osoba-dialog .monogram{font-size:var(--fs-title-3)}
.osoba{position:relative; padding-right:34px}
.osoba::after{content:"→"; position:absolute; right:14px; bottom:12px; font-size:var(--fs-meta); font-weight:800; color:var(--peach-deep); transition:color .15s ease, transform .15s ease}
.osoba:hover::after{color:var(--orange); transform:translateX(3px)}
.spis{margin:0 0 8px; padding:14px 18px; background:var(--card); border:1px solid var(--line); border-radius:14px}
.spis .lbl{margin:0 0 8px; font-size:var(--fs-micro); font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--orange-deep)}
.spis ul{list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:8px}
.spis a{display:inline-flex; align-items:center; gap:7px; padding:7px 12px; border-radius:999px; background:var(--peach); color:var(--navy); font-weight:700; font-size:var(--fs-meta); text-decoration:none}
.spis a:hover{background:var(--peach-deep)}
.spis .n{font-size:var(--fs-micro); font-weight:800; color:var(--orange-deep); background:var(--card); padding:1px 7px; border-radius:999px}
.grono-zespol{scroll-margin-top:24px}
.to-top{position:fixed; right:16px; bottom:16px; z-index:80; width:44px; height:44px; border:1px solid var(--line); border-radius:12px; background:var(--card); color:var(--orange-deep); cursor:pointer; box-shadow:var(--shadow); display:grid; place-items:center; opacity:.92; transition:opacity .15s ease, transform .15s ease}
.to-top svg{width:20px; height:20px}
.to-top:hover{opacity:1; transform:translateY(-2px); color:var(--orange)}
.to-top:focus-visible{outline:3px solid var(--orange); outline-offset:2px}
.to-top[hidden]{display:none}
@media (min-width:1360px){ .to-top{right:calc((100vw - var(--content)) / 2 - 60px)} }
@media print{ .to-top{display:none} }
.js .search-dialog .search-form button[type="submit"]{display:none}
.results .all{padding:12px 12px 6px; border-top:1px solid var(--line); border-radius:0}
.results .all:hover{background:transparent}
.results .all a{font-size:var(--fs-nav); color:var(--orange-deep)}
@media (max-width:640px){ .js .search-form .close{margin-left:auto} }
@media (min-width:900px){
  .children--many ul{display:grid; grid-template-columns:1fr 1fr; gap:0 18px; padding:6px 10px}
  .children--many li{border-bottom:1px solid var(--line)}
  .children--many li:nth-last-child(-n+2):nth-child(odd), .children--many li:last-child{border-bottom:0}
  .children--many li a{min-height:48px; padding:9px 8px}
}
.results li{position:relative; cursor:pointer}
.results li > a::after{content:""; position:absolute; inset:0}
.results li:not(.all)::after{content:"→"; position:absolute; right:14px; top:14px; color:var(--peach-deep); font-weight:800; pointer-events:none}
.results li:hover::after{color:var(--orange)}
.results li > a{position:static}
.results li:hover > a{color:var(--orange-deep)}
.klasy .klasa-kafel{text-decoration:none}
.klasy .monogram.etykieta{background:var(--navy); font-size:var(--fs-body); letter-spacing:.02em}
.klasy .meta2{color:var(--orange-deep); font-weight:700; font-size:var(--fs-label)}
.lata{display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding:14px 22px 18px}
.lata .rok{display:inline-block; padding:7px 13px; border-radius:999px; background:var(--peach); color:var(--navy); font-weight:700; font-size:var(--fs-meta); text-decoration:none}
.lata a.rok:hover{background:var(--peach-deep)}
.lata .rok.is-active{background:var(--navy); color:#fff}
.lata .lbl{margin-left:12px; font-size:var(--fs-label); color:var(--muted); font-weight:700}
.rok-h1{display:block; font-size:var(--fs-body); font-weight:600; color:var(--muted); letter-spacing:0; margin-top:4px}
.klasa-karta{display:grid; grid-template-columns:repeat(auto-fit, minmax(160px,1fr)); gap:12px; margin:18px 0 6px}
.klasa-poz{background:var(--card); border:1px solid var(--line); border-radius:12px; padding:12px 16px}
.klasa-poz .lbl{display:block; font-size:var(--fs-micro); font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--orange-deep); margin-bottom:3px}
.klasa-poz b{color:var(--navy); font-size:var(--fs-body)}
.droga-lista{list-style:none; margin:0; padding:10px 22px 16px; display:flex; flex-wrap:wrap; gap:8px 6px; align-items:center}
.droga-lista li{display:inline-flex; align-items:center; gap:6px; padding:7px 12px; background:var(--peach); border-radius:10px; font-weight:700; color:var(--navy)}
.droga-lista li:not(:last-child)::after{content:"→"; margin-left:8px; color:var(--orange)}
.droga-lista li.teraz{background:var(--navy); color:#fff}
.droga-lista .rok-lbl{font-size:var(--fs-micro); font-weight:700; color:var(--muted); margin-right:2px}
.droga-lista li.teraz .rok-lbl{color:#C6CEDC}
.droga-lista a{color:inherit; text-decoration:none}
.droga-lista a:hover{color:var(--orange-deep)}
.droga-lista .plus{color:var(--orange-deep)}
.droga-lista .uwaga{font-size:var(--fs-micro); font-weight:600; color:var(--orange-deep); background:var(--card); padding:1px 7px; border-radius:999px}
.klasa-przyciski{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:18px 0 26px}
@media (max-width:640px){ .klasa-przyciski{grid-template-columns:1fr} }
.klasa-opis{margin:0 0 8px; display:grid; grid-template-columns:150px 1fr; gap:12px 20px; background:var(--card); border:1px solid var(--line); border-radius:14px; padding:20px 22px}
.klasa-opis dt{font-size:var(--fs-micro); font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--orange-deep); padding-top:3px}
.klasa-opis dd{margin:0; color:var(--ink)}
.klasa-opis .sala{color:var(--muted)}
.klasa-opis .swobodny{line-height:1.6}
.nauczyciele{list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fill, minmax(230px,1fr)); gap:4px 18px}
.nauczyciele li{display:flex; flex-direction:column; padding:5px 0; border-bottom:1px solid var(--line)}
.nauczyciele .przedmiot{font-size:var(--fs-micro); color:var(--muted)}
.nauczyciele .osoba-n{font-weight:700; color:var(--navy)}
.klasy .profil{color:var(--navy); font-weight:600; font-size:var(--fs-label)}
@media (max-width:640px){ .klasa-opis{grid-template-columns:1fr; gap:4px 0} .klasa-opis dt{margin-top:10px} }
.grono.klasy{grid-template-columns:repeat(3,1fr)}
@media (max-width:900px){ .grono.klasy{grid-template-columns:repeat(2,1fr)} }
@media (max-width:560px){ .grono.klasy{grid-template-columns:1fr} }
.klasy .monogram.etykieta.ciemne{background:var(--navy); color:#fff}
.klasy .monogram.etykieta.jasne{background:var(--peach); color:var(--navy); box-shadow:inset 0 0 0 2px var(--peach-deep)}
.grono.klasy li.nowy-rocznik{grid-column-start:1}
.klasy .profil.absolwenci{color:var(--orange-deep)}
.roczniki{display:grid; grid-template-columns:1fr 1fr; gap:12px 20px; margin:8px 0 10px}
.rocznik{list-style:none; margin:0; padding:12px 14px; display:flex; flex-wrap:wrap; gap:8px; align-content:flex-start; background:var(--card); border:1px solid var(--line); border-radius:14px}
.kwadrat{position:relative; display:flex; align-items:center; justify-content:center; width:60px; height:60px; border-radius:12px; text-decoration:none; background:var(--peach); color:var(--navy); border:1px solid var(--peach-deep); transition:transform .15s ease, box-shadow .15s ease, background .15s ease}
.kwadrat:hover, .kwadrat:focus-visible{transform:translateY(-2px); box-shadow:var(--shadow); background:var(--orange); color:#fff; border-color:var(--orange); outline:none}
.kwadrat:focus-visible{box-shadow:0 0 0 3px var(--orange-2)}
.kwadrat .duza{font-size:var(--fs-title-4); font-weight:900; letter-spacing:.04em; line-height:1}
.kwadrat .hover{position:absolute; left:50%; bottom:calc(100% + 8px); transform:translateX(-50%); white-space:nowrap; background:var(--navy); color:#fff; font-size:var(--fs-label); font-weight:600; padding:6px 10px; border-radius:8px; opacity:0; visibility:hidden; transition:opacity .12s ease; pointer-events:none; z-index:5; text-align:center}
.kwadrat .hover i{display:block; font-style:normal; color:#C6CEDC; font-size:var(--fs-micro)}
.kwadrat:hover .hover, .kwadrat:focus-visible .hover{opacity:1; visibility:visible}
.kwadrat .abs{position:absolute; left:0; right:0; bottom:-16px; font-size:var(--fs-micro); font-weight:800; letter-spacing:.04em; text-transform:uppercase; text-align:center; color:var(--orange-deep)}
.rocznik:has(.abs){padding-bottom:26px}
.kwadrat .lb{position:absolute; top:-6px; right:-6px; min-width:18px; height:18px; padding:0 5px; border-radius:999px; background:var(--orange); color:#fff; font-size:var(--fs-micro); font-weight:800; display:grid; place-items:center; border:2px solid var(--card)}
@media (max-width:800px){ .roczniki{grid-template-columns:1fr} }
@media (max-width:640px){ .kwadrat .hover{display:none} }
.grono--w-opisie{grid-template-columns:repeat(auto-fill, minmax(220px,1fr)); gap:10px}
.grono--w-opisie .osoba{padding:10px 30px 10px 12px}
.grono--w-opisie .monogram{width:44px; height:44px; font-size:var(--fs-meta)}
.os-czasu{list-style:none; margin:0; padding:16px 22px 18px; display:flex; flex-wrap:wrap; align-items:flex-start; gap:10px 0}
.os-czasu .krok{position:relative; display:flex; flex-direction:column; align-items:center; gap:6px; padding:0 22px 0 0; margin-right:22px}
.os-czasu .krok:not(:last-child)::after{content:""; position:absolute; right:-4px; top:34px; width:26px; height:2px; background:var(--peach-deep)}
.os-czasu .krok:not(:last-child)::before{content:""; position:absolute; right:-8px; top:30px; width:0; height:0; border-left:8px solid var(--peach-deep); border-top:5px solid transparent; border-bottom:5px solid transparent}
.os-czasu .rok-lbl{font-size:var(--fs-micro); font-weight:700; color:var(--muted); letter-spacing:.02em}
.os-czasu .kwadraty{display:flex; flex-direction:column; gap:6px}
.os-czasu .kwadrat.mini{width:56px; height:56px}
.os-czasu .kwadrat.mini .duza{font-size:var(--fs-body)}
.os-czasu .teraz .kwadrat.mini{background:var(--navy); color:#fff; border-color:var(--navy); cursor:default}
.os-czasu .uwaga{font-size:var(--fs-micro); font-weight:700; color:var(--orange-deep)}
.albumy{list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:20px; align-items:stretch}
.albumy li{display:flex}
.album{width:100%}
@media (max-width:900px){ .albumy{grid-template-columns:repeat(2, minmax(0,1fr)); gap:14px} }
@media (max-width:560px){ .albumy{grid-template-columns:1fr} }
.album{display:block; background:var(--card); border:1px solid var(--line); border-radius:14px; overflow:hidden; text-decoration:none; color:var(--navy); transition:transform .18s ease, box-shadow .18s ease}
.album:hover{transform:translateY(-3px); box-shadow:var(--shadow)}
.album .okladka{display:block; aspect-ratio:16/10; overflow:hidden; background:var(--peach)}
.album .okladka img{width:100%; height:100%; object-fit:cover; display:block}
.album .txt{display:block; padding:14px 16px 16px}
.album b{display:block; font-weight:800; font-size:var(--fs-title-4); line-height:24px}
.album .meta{display:block; margin-top:6px; font-size:var(--fs-meta); color:var(--muted)}
.zdjecia{list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fill, minmax(200px,1fr)); gap:10px}
.zdjecia a{display:block; aspect-ratio:4/3; overflow:hidden; border-radius:12px; background:var(--peach)}
.zdjecia img{width:100%; height:100%; object-fit:cover; display:block; transition:transform .2s ease}
.zdjecia a:hover img{transform:scale(1.04)}
.kwadrat .duza{white-space:nowrap}
.os-czasu li, .os-czasu .krok{border:0}
.alert{background:var(--tint); border-top:1px solid var(--peach-deep); border-bottom:1px solid var(--peach-deep)}
.alert + .alert{border-top:0}
.alert-in{max-width:var(--content); margin:0 auto; padding:12px 24px; display:flex; align-items:flex-start; gap:12px}
.alert .ic{flex:none; width:26px; height:26px; border-radius:50%; background:var(--orange); color:#fff; font-weight:900; display:grid; place-items:center; margin-top:1px}
.alert p{flex:1; min-width:0; margin:0; color:var(--navy); font-size:var(--fs-nav); line-height:24px; padding-top:2px}
.alert b{color:var(--orange-deep)}
.alert a{color:var(--navy); font-weight:700; white-space:nowrap}
.alert .close{flex:none; width:32px; height:32px; padding:0; border:1px solid var(--peach-deep); border-radius:50%;
  background:var(--card); color:var(--navy); display:grid; place-items:center; cursor:pointer; transition:background .15s, color .15s}
.alert .close svg{display:block; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round}
.alert .close:hover{background:var(--peach); color:var(--orange-deep)}
.alert .close:focus-visible{outline:2px solid var(--orange); outline-offset:2px}
@media (max-width:640px){ .alert-in{padding:10px 16px} }
.alert-box{max-width:var(--content); margin:44px auto 32px; padding:0 24px}
.alert-box h2{font-size:var(--fs-label); letter-spacing:.12em; text-transform:uppercase; font-weight:800; color:var(--orange-deep); margin:0 0 10px}
.alert-box ul{list-style:none; margin:0; padding:0; background:var(--tint); border:1px solid var(--peach-deep); border-radius:var(--radius)}
.alert-box li{padding:12px 22px; line-height:24px; color:var(--navy); border-top:1px solid var(--peach-deep)}
.alert-box li:first-child{border-top:0}
.alert-box a{color:var(--navy); font-weight:700}
@media (max-width:640px){ .alert-box{padding:0 16px; margin-top:32px} .alert-box li{padding:10px 16px} }
.alert-popup{max-width:520px; width:calc(100% - 32px); padding:26px 28px 24px; border:1px solid var(--peach-deep);
  border-radius:var(--radius); background:var(--card); color:var(--ink); box-shadow:var(--shadow)}
.alert-popup::backdrop{background:rgba(27,40,69,.55)}
.alert-popup h2{font-size:var(--fs-title-3); color:var(--orange-deep); margin:0 0 12px}
.alert-popup p{margin:0 0 20px; line-height:24px}
.alert-popup a{color:var(--navy); font-weight:700}
.alert-popup button{font-weight:800; color:#fff; background:var(--orange); border:0; border-radius:12px; padding:12px 20px; cursor:pointer}
.alert-popup button:hover{background:var(--orange-deep)}
.alert-popup button:focus-visible{outline:2px solid var(--navy); outline-offset:2px}
.programs{max-width:var(--content); margin:44px auto 0; padding:0 24px}
.programs-in{padding:18px 24px 20px; background:var(--card); border:1px solid var(--line); border-radius:14px}
.programs h2{font-size:var(--fs-micro); font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); margin:0 0 14px}
.programs ul{list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:12px 18px; align-items:center}
.programs a{display:block; height:56px; border-radius:10px; text-decoration:none; transition:transform .15s ease, box-shadow .15s ease}
.programs a:hover{transform:translateY(-2px); box-shadow:var(--shadow)}
.programs img{height:56px; width:auto; max-width:180px; object-fit:contain; display:block}
.logo-placeholder{display:grid; place-items:center; height:56px; min-width:140px; padding:0 14px; border:1px dashed var(--peach-deep); border-radius:10px; background:var(--cream); color:var(--navy); font-weight:800; font-size:var(--fs-label); text-align:center; line-height:1.15}
@media (max-width:640px){ .programs a, .programs img, .logo-placeholder{height:48px} .programs ul{gap:10px} }
.jadlospis{display:grid; gap:12px; margin:8px 0 26px}
.dzien{background:var(--card); border:1px solid var(--line); border-radius:14px; padding:16px 20px}
.dzien.dzis{border-color:var(--orange); box-shadow:0 0 0 2px rgba(var(--accent-rgb),.15)}
.dzien h2{font-size:var(--fs-title-4); margin:0 0 10px; display:flex; flex-wrap:wrap; align-items:center; gap:10px}
.dzien .dzis-lbl{font-size:var(--fs-micro); font-weight:800; letter-spacing:.08em; text-transform:uppercase; background:var(--orange); color:#fff; padding:2px 8px; border-radius:999px}
.dzien .dopisek{font-size:var(--fs-label); font-weight:600; color:var(--orange-deep)}
.dzien dl{margin:0; display:grid; grid-template-columns:120px 1fr; gap:6px 14px}
.dzien dt{font-size:var(--fs-label); font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--muted); padding-top:2px}
.dzien dd{margin:0}
.dzien .alerg{color:var(--orange-deep); font-size:var(--fs-meta)}
.dzien dt.alerg{color:var(--orange-deep)}
.lead .arch{color:var(--orange-deep); font-weight:700}
@media (max-width:640px){ .dzien dl{grid-template-columns:1fr; gap:2px 0} .dzien dt{margin-top:8px} }
@media (max-width:1100px){
  .mobile-panel.open{max-height:6000px; overflow:hidden}
  .burger{height:52px; min-height:0; padding-top:0; padding-bottom:0}
  .mrow .mlink, .mtog{height:52px; min-height:0}
  .mitem.is-open .mrow .mlink, .mitem.is-open .mrow .mlink.is-active{background:var(--bar-solid); color:#fff; border-radius:10px 0 0 0}
  .mitem.is-open .mrow .mtog{background:var(--bar-solid); color:#fff; border-radius:0 10px 0 0; border-left:1px solid rgba(255,255,255,.35)}
  .mitem.is-open .msub{border-color:var(--bar-solid)}
  .mrow .mlink.is-active{background:var(--bar-solid); color:#fff}
  .msub a.is-active{background:var(--bar-solid); color:#fff}
  .mrow .mlink:hover, .mtog:hover{background:var(--peach); color:var(--navy)}
  .mitem.is-open .mrow .mlink:hover, .mitem.is-open .mrow .mtog:hover{background:var(--bar2); color:#fff}
}
@media (max-width:1100px){ .mobile-panel, .mobile-panel.open{overscroll-behavior:auto} }
@media (max-width:640px){ .brand-sub{display:block; font-size:var(--fs-label); line-height:1.25} }
@media (max-width:640px){
  .search-form{flex-wrap:nowrap; gap:8px}
  .search-form input[type="search"]{flex:1 1 auto; order:0}
  .search-form .close{order:1; width:46px; height:46px; flex:none}
  .js .search-form .close{margin-left:0}
  .search-form button[type="submit"]{order:2; flex:none; width:auto; padding:0 14px}
}
@media (min-width:1101px){ .mobile-panel, .mobile-panel.open{display:none} }
.block-text{margin:0 0 8px}
.block-video{margin:22px 0}
.block-video .video-frame{position:relative; aspect-ratio:16/9; background:#000; border-radius:10px; overflow:hidden}
.block-video iframe{position:absolute; inset:0; width:100%; height:100%; border:0}
.block-video figcaption{font-size:var(--fs-nav); color:var(--muted, #6b6b6b); margin-top:8px}
nav.main > ul > li.home-link > a .home-icon{width:22px; height:22px; display:block}
.foot-langs__item[data-tip]{position:relative}
.foot-langs__item[data-tip]::after{content:attr(data-tip); position:absolute; z-index:130; bottom:calc(100% + 10px); left:50%; transform:translateX(-50%); padding:6px 10px; border-radius:8px; background:#fff; color:var(--navy); font-size:var(--fs-label); font-weight:600; line-height:1.3; white-space:nowrap; pointer-events:none; opacity:0; transition:opacity .12s ease; box-shadow:0 0 0 2px var(--dark-deep), 0 4px 14px rgba(0,0,0,.35)}
.foot-langs__item[data-tip]::before{content:""; position:absolute; z-index:131; bottom:calc(100% - 1px); left:50%; transform:translateX(-50%); border:6px solid transparent; border-top-color:#fff; pointer-events:none; opacity:0; transition:opacity .12s ease}
@media (min-width:1200px){
  .foot-langs ul:has(> li:nth-child(11)) li:nth-child(n+11) .foot-langs__item[data-tip]::after{bottom:auto; top:calc(100% + 10px)}
  .foot-langs ul:has(> li:nth-child(11)) li:nth-child(n+11) .foot-langs__item[data-tip]::before{bottom:auto; top:calc(100% - 1px); border-top-color:transparent; border-bottom-color:#fff}
}
.foot-langs__item[data-tip]:hover::after, .foot-langs__item[data-tip]:hover::before, .foot-langs__item[data-tip]:focus-visible::after, .foot-langs__item[data-tip]:focus-visible::before{opacity:1}
.lang-tipbox{position:fixed; z-index:200; padding:6px 10px; border-radius:8px; background:var(--navy); color:#fff; font-size:var(--fs-label); font-weight:600; line-height:1.3; white-space:nowrap; pointer-events:none}
.lang-tipbox::after{content:""; position:absolute; left:100%; top:50%; transform:translateY(-50%); border:6px solid transparent; border-left-color:var(--navy)}

