.brand-mark.has-unit-logo { padding: 3px; border: 1px solid #64758a; background: #fff; }
.brand-mark.has-unit-logo[data-shape="rectangle"] { width: 120px; flex-basis: 120px; }
.brand-mark.has-unit-logo img { width: 100%; height: 100%; object-fit: contain; }
.bip-metadata { margin: 2rem 0; padding: 1.25rem; background: #edf3f9; color: #172d46; border: 1px solid #64758a; border-radius: 6px; }
.bip-metadata h2 { font-size: 1.2rem; margin-top: 0; }
.bip-metadata dl { display: grid; grid-template-columns: max-content 1fr; gap: .5rem 1rem; }
.bip-metadata dt { font-weight: 650; }
.bip-metadata dd { margin: 0; overflow-wrap: anywhere; }
.local-article-paragraph { white-space: pre-line; overflow-wrap: anywhere; }
.article-history { margin-top: 1.5rem; }
.article-history summary { min-height: 44px; padding: .6rem 0; cursor: pointer; font-weight: 700; }
.article-history-list { padding-left: 1.5rem; }
.article-history-list li { padding: .75rem .25rem; border-bottom: 1px solid #64758a; overflow-wrap: anywhere; }
.article-history-list p { margin: .35rem 0; }
.featured-news.news-text-only, .category-item.news-text-only { grid-template-columns: minmax(0, 1fr); }
.news-text-only .news-card-body { min-width: 0; }
.article-figure img { max-width: 100%; height: auto; }
.main-menu { position: relative; z-index: 20; }
.cms-nav-line { display: flex; align-items: stretch; min-width: 0; }
.theme-classic .main-menu a { color: #fff; }
.main-menu > ul > li { position: static; max-width: 100%; }
.main-menu .cms-nav-line > a { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.main-menu > ul > li > .cms-nav-line > a { display: block; min-height: 44px; padding: .87rem 1.1rem; color: #fff; text-decoration: none; font-weight: 650; }
.main-menu .cms-nav-toggle { align-self: center; margin: .25rem .35rem .25rem 0; }
.main-menu .cms-menu-button { display: none; align-items: center; justify-content: space-between; gap: 1rem; width: calc(100% - 32px); min-height: 48px; margin: 0 auto; padding: .65rem .8rem; border: 1px solid #fff; border-radius: 6px; background: #17466e; color: #fff; font-weight: 700; text-align: left; }
.main-menu .cms-menu-button:hover { background: #29618c; }
.cms-menu-button > [aria-hidden] { font-size: 1.4rem; line-height: 1; }
.main-menu .cms-nav-toggle { flex: none; min-width: 44px; min-height: 44px; padding: .5rem; border: 1px solid #fff; border-radius: 4px; background: #17466e; color: #fff; cursor: pointer; font-size: 1rem; }
.main-menu .cms-nav-toggle:is(:hover, :focus-visible) { background: #29618c; }
.main-menu ul.cms-submenu { display: block; position: static; min-width: 0; width: auto; max-width: 100%; padding: .6rem 1rem; margin: 0; background: #17466e; color: #fff; border: 1px solid #fff; }
.main-menu > ul > li > ul.cms-submenu { position: absolute; top: 100%; left: 0; right: 0; max-height: 65vh; overflow: auto; box-shadow: 0 5px 12px #172d4626; }
.main-menu ul.cms-submenu[hidden] { display: none; }
.main-menu ul.cms-submenu a { white-space: normal; overflow-wrap: anywhere; }
.main-menu ul.cms-submenu ul.cms-submenu { margin-left: .5rem; border-width: 0 0 0 2px; }
.cms-public-list { list-style: none; padding: 0; }
.cms-public-list > li { padding: 1.1rem 0; border-bottom: 1px solid #64758a; }
.cms-public-list h2 { font-size: 1.3rem; margin-top: 0; }
html[data-contrast="high"] .main-menu :is(.cms-submenu, .cms-nav-toggle) { background: #000; color: #fff; border-color: #ffdf00; }
html[data-contrast="high"] .main-menu .cms-nav-toggle:is(:hover, :focus-visible) { background: #ffdf00; color: #000; }
@media(max-width:720px) {
  .main-menu { padding: .5rem 0; }
  .main-menu .cms-menu-button { display: flex; }
  .main-menu > ul { display: block; width: 100%; padding: .5rem; }
  .main-menu > ul > li { width: 100%; }
  .main-menu > ul > li > a, .main-menu > ul > li > .cms-nav-line > a { min-height: 44px; padding: .7rem .8rem; font-size: 1rem; }
  .main-menu > ul > li > ul.cms-submenu { position: static; max-height: none; overflow: visible; box-shadow: none; }
  .main-menu ul.cms-submenu { margin: .2rem .3rem .4rem .6rem; padding: .25rem .4rem; border-width: 0 0 0 2px; }
  .main-menu .cms-submenu .cms-nav-line > a { padding: .65rem .4rem; min-height: 44px; }
  .brand-mark.has-unit-logo[data-shape="rectangle"] { width: 96px; flex-basis: 96px; }
  .bip-metadata dl { grid-template-columns: 1fr; }
  .bip-metadata dd { margin-bottom: .5rem; }
}
.site-footer, #unit-contact, #unit-contact-hours { overflow-wrap:anywhere; }
.site-footer [hidden] { display:none !important; }
.carousel-rotation-bar { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:.6rem; padding:.75rem 1rem; background:#fff; color:#172d46; }
.carousel-rotation-bar button { min-height:44px; padding:.6rem .8rem; border:1px solid #526780; border-radius:6px; background:#fff; color:#172d46; font:inherit; font-weight:650; white-space:normal; }
.carousel-rotation-bar button:hover { background:#edf3f9; }
.carousel-rotation-hint { font-size:.85rem; }
.carousel-controls { flex-wrap:wrap; }
.carousel-rotation-bar[hidden] { display:none; }
#projekty > h2 { font-size:clamp(1.68rem,2.8vw,2.25rem); line-height:1.2; margin:0 0 .6rem; color:var(--ink,#172d46); }
#projekty > p { margin:.5rem 0 1.25rem; }.projects-carousel { border:1px solid #64758a; border-radius:12px; overflow:hidden; background:#fff; }
.projects-page { display:grid; grid-template-columns:repeat(var(--project-columns,3),minmax(0,1fr)); gap:1rem; padding:1rem; }.projects-page[hidden] { display:none; }
.project-card { position:relative; min-width:0; padding:1.25rem; background:#f1f5f9; border:1px solid #64758a; border-radius:8px; overflow-wrap:anywhere; }.project-card h3 { font-size:1.2rem; line-height:1.4; margin:0 0 .75rem; }.project-card h3 a { color:#17466e; text-decoration:underline; text-underline-offset:.2em; }.project-card h3 a::after { content:''; position:absolute; inset:0; border-radius:8px; }.project-card p { color:#172d46; line-height:1.65; margin:.5rem 0; }.project-link-kind { display:block; font-size:.85rem; color:#40566e; margin-top:1rem; }.project-card:focus-within { outline:3px solid #8c3600; outline-offset:3px; }
@media(max-width:1000px){.projects-page{--project-columns:2;}}
@media(max-width:600px){.projects-page{--project-columns:1;}}
html[data-contrast="high"] .project-card:focus-within { outline-color:#ffdf00; }
