/* Bootstrap 4 alpha compatibility and restrained visual refresh. */
:root {
    --portal-blue: #094575;
    --portal-border: #dce3eb;
    --portal-muted: #586577;
    --bs-body-color: #202a36;
    --bs-body-font-size: 1rem;
    --bs-link-color: #063f6c;
    --bs-link-hover-color: #094575;
    --bs-border-radius: .375rem;
}
html { scroll-padding-top: 76px; }
body { background: #fff; line-height: 1.55; overflow-wrap: break-word; }
.container { --bs-gutter-x: 30px; width: 100%; max-width: 1340px; }
.container-fluid { --bs-gutter-x: 30px; }
.container.p-0 > .row { margin-left: 0; margin-right: 0; }
.row { --bs-gutter-x: 30px; }
.row > * { min-width: 0; }
img { max-width: 100%; height: auto; }
iframe, video, embed, object { max-width: 100%; }
.portal-theme ins.adsbygoogle { max-width: 100%; }
a { text-decoration: none; }
a:hover { text-decoration: none; }
button, input, select, textarea { font: inherit; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid #2487cf; outline-offset: 3px; }
h1, h2, h3, h4, h5 { font-family: 'Fira Sans', system-ui, sans-serif; line-height: 1.2; }
h1 { font-size: 2.5rem; } h2 { font-size: 2rem; } h3 { font-size: 1.75rem; }
h4 { font-size: 1.5rem; } h5 { font-size: 1.25rem; }
.pull-right, .float-right { float: right !important; }
.pull-left, .float-left { float: left !important; }
.text-right { text-align: right !important; }
.text-left { text-align: left !important; }
.pl-0 { padding-left: 0 !important; } .pl-1 { padding-left: .25rem !important; }
.pr-0 { padding-right: 0 !important; } .mr-1 { margin-right: .25rem !important; }
.font-weight-bold { font-weight: 700 !important; }
.font-weight-normal { font-weight: 400 !important; }
.btn-block { display: block; width: 100%; }
.btn-block + .btn-block { margin-top: .5rem; }
.btn-default:not(.btn-primary):not(.btn-danger):not(.btn-info):not(.btn-success):not(.btn-warning) { --bs-btn-color: #263649; --bs-btn-bg: #fff; --bs-btn-border-color: #c6d0db; }
.btn-primary { --bs-btn-bg: #094575; --bs-btn-border-color: #094575; --bs-btn-hover-bg: #063552; }
.form-group { margin-bottom: 1rem; }
.form-control { line-height: 1.5; }
select.form-control { appearance: auto; }
.input-group-addon { padding: .375rem .75rem; background: #edf1f5; border: 1px solid #ced4da; }
.card-block, .card-body { padding: 1.25rem; }
.card-header { padding: .75rem 1.25rem; }
.close { float: right; padding: 0; border: 0; background: transparent; font-size: 1.5rem; line-height: 1; }
.modal-header { justify-content: space-between; }
.embed-responsive { position: relative; display: block; width: 100%; padding: 0; overflow: hidden; }
.embed-responsive::before { display: block; content: ''; }
.embed-responsive-16by9::before { padding-top: 56.25%; }
.embed-responsive-4by3::before { padding-top: 75%; }
.embed-responsive iframe, .embed-responsive-item { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; }
.img-responsive, .img-fluid { max-width: 100%; height: auto; }
.hidden, .hide { display: none !important; }
.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; }
.skip-link:focus { clip: auto; clip-path: none; height: auto; width: auto; margin: 0; padding: 14px 20px; background: #fff; color: #094575; top: 10px; left: 10px; z-index: 100000; }
.nav-top-1 { border-bottom: 0; }
.nav-top-1 a { border-radius: 4px; }
.nav-top-1.sticky { top: 0 !important; box-shadow: 0 3px 14px #122d4a33; }
.admin-bar .nav-top-1.sticky { top: 32px !important; }
.top-icons a { border-color: var(--portal-border); border-radius: 6px; white-space: nowrap; overflow-wrap: normal; font-size: 13px; padding: 7px 4px; line-height: 1.35; transition: background-color .15s ease, color .15s ease; }
.top-icons a:hover { border: 1px solid #053359; }
.tg-btn { border: 1px solid var(--portal-border); border-radius: 6px; padding: 8px 12px; background: #fff; color: #094575; cursor: pointer; }
.gminy-linki ul { display: flex; flex-wrap: wrap; gap: 4px; padding-left: 0; }
.gminy-linki li { list-style: none; }
.post-entry { min-width: 0; }
.con-post .post-title { line-height: 1.16; letter-spacing: -.025em; overflow-wrap: break-word; }
.post-entry p { line-height: 1.75; }
.category-list .post, .category-list .event { display: flow-root; border-bottom: 1px solid var(--portal-border); padding-bottom: 18px; margin-bottom: 18px; }
.category-list h2 { line-height: 1.3; }
.search-form { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; padding: 12px; border: 1px solid var(--portal-border); border-radius: 7px; background: #f7f9fc; }
.search-form label { flex: 1 1 180px; margin: 0; }
.search-field { width: 100%; min-width: 0; padding: 9px 12px; border: 1px solid #c4ceda; border-radius: 5px; background: #fff; }
.search-submit { padding: 9px 18px; border: 1px solid #094575; border-radius: 5px; background: #094575; color: #fff; cursor: pointer; }
.pagination, .nav-links { display: flex; gap: 6px; flex-wrap: wrap; padding: 18px 0; }
.navigation.pagination { display: block; clear: both; width: 100%; }
.nav-links { justify-content: center; width: 100%; }
.page-numbers { padding: 6px 12px; border: 1px solid var(--portal-border); border-radius: 4px; }
.page-numbers.current { background: #094575; color: #fff; }
.footer { margin-top: 32px !important; border-top: 1px solid var(--portal-border); padding-top: 22px; }
.footer li { margin-bottom: 8px; }
.footer > .col-md-12 > .row { margin-left: 0; margin-right: 0; }
.last-ads > .row { margin-left: 0; margin-right: 0; }
.ads-s img { height: auto; }
.ads-s { padding-left: 15px; padding-right: 15px; }
@media (max-width: 991.98px) {
    .container { max-width: 100%; }
    .top-icons-wrapper { padding-right: 15px !important; }
    .logo img { max-width: min(100%, 300px); }
    .con-post .post-title { font-size: 2rem; }
}
@media (max-width: 767.98px) {
    body { padding-bottom: 80px; }
    .portal-mobile-action { left: 0; width: 100% !important; z-index: 1020; box-shadow: 0 -3px 16px #122d4a1a; padding-bottom: max(10px, env(safe-area-inset-bottom)) !important; }
    .container { padding-left: 15px; padding-right: 15px; }
    .hidden-xs { display: none !important; }
    .hidden-sm-down { display: none !important; }
    .con-post .post-title { font-size: 1.75rem; }
    .top-icons li { margin-bottom: 6px; }
    .footer .pull-right { float: none !important; }
    .post-entry table { display: block; max-width: 100%; overflow-x: auto; }
}
@media (min-width: 576px) { .hidden-sm-up { display: none !important; } }
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
