/*
Theme Name: Informacje Gdańsk
Description: Motyw informacjegdansk.pl - samodzielny, zastepuje Flatsome 3.7.2 i motyw potomny flatsome-child (2026-10-30).
Version: 1.0.0
Requires PHP: 8.2
Text Domain: informacjegdansk
*/

/* ===== 1. Baza z Flatsome 3.7.2 - tylko reguly uzywane na stronie (wyciag automatyczny, 2026-10-30) ===== */
html { font-family: sans-serif; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { margin: 0px; }
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary { display: block; }
audio, canvas, progress, video { display: inline-block; }
template, [hidden] { display: none; }
a { background-color: transparent; }
a:active, a:hover { outline-width: 0px; }
b, strong { font-weight: inherit; }
b, strong { font-weight: bolder; }
small { font-size: 80%; display: inline-block; }
img { border-style: none; }
svg:not(:root) { overflow: hidden; }
button, input, select, textarea { font: inherit; }
button, input, select { overflow: visible; }
button, select { text-transform: none; }
button, [type="button"], [type="reset"], [type="submit"] { cursor: pointer; }
button, html [type="button"], [type="reset"], [type="submit"] { appearance: button; }
textarea { overflow: auto; }
[type="checkbox"], [type="radio"] { box-sizing: border-box; padding: 0px; }
[type="search"] { appearance: textfield; }
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration { appearance: none; }
*, ::before, ::after { box-sizing: border-box; }
html { box-sizing: border-box; background-attachment: fixed; }
body { color: rgb(119, 119, 119); scroll-behavior: smooth; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; display: inline-block; vertical-align: middle; }
figure { margin: 0px; }
a, button, input { touch-action: manipulation; }
embed, iframe, object { max-width: 100%; }
.col, .gallery-item, .columns { position: relative; margin: 0px; padding: 0px 15px 30px; width: 100%; }
.col-inner { position: relative; margin-left: auto; margin-right: auto; width: 100%; background-position: 50% 50%; background-size: cover; background-repeat: no-repeat; flex: 1 0 auto; }
@media screen and (min-width: 850px) {
.col:first-child .col-inner { margin-left: auto; margin-right: 0px; }
}
@media screen and (max-width: 849px) {
.col { padding-bottom: 30px; }
}
@media screen and (min-width: 850px) {
.large-12 { max-width: 100%; flex-basis: 100%; }
}
body, .container, .full-width .ubermenu-nav, .container-width, .row { width: 100%; margin-left: auto; margin-right: auto; }
.container { padding-left: 15px; padding-right: 15px; }
.container-width, .full-width .ubermenu-nav, .container, .row { max-width: 1080px; }
.flex-row { display: flex; flex-flow: row; align-items: center; justify-content: space-between; width: 100%; }
.header .flex-row { height: 100%; }
.flex-col { max-height: 100%; }
.flex-center { margin: 0px auto; }
.flex-left { margin-right: auto; }
.flex-right { margin-left: auto; }
@media (-ms-high-contrast: none) {
.nav > li > a > i { top: -1px; }
}
.row, .gallery { width: 100%; display: flex; flex-flow: wrap; }
.nav-dropdown { position: absolute; min-width: 260px; max-height: 0px; z-index: 9; padding: 20px 0px; opacity: 0; margin: 0px; transition: opacity 0.25s; box-shadow: rgba(0, 0, 0, 0.15) 1px 1px 15px; border: 2px solid rgb(221, 221, 221); color: rgb(119, 119, 119); background-color: rgb(255, 255, 255); text-align: left; display: table; left: -99999px; }
.nav-dropdown::after { visibility: hidden; display: block; content: ""; clear: both; height: 0px; }
.nav-dropdown li { display: block; margin: 0px; vertical-align: top; }
.nav-dropdown li ul { margin: 0px; padding: 0px; }
li.current-dropdown > .nav-dropdown, .next-prev-thumbs li.has-dropdown:hover > .nav-dropdown, .no-js li.has-dropdown:hover > .nav-dropdown { opacity: 1; max-height: inherit; left: -15px; }
.nav-column li > a, .nav-dropdown > li > a { width: auto; display: block; padding: 10px 20px; line-height: 1.3; }
.nav-column > li:last-child:not(.nav-dropdown-col) > a, .nav-dropdown > li:last-child:not(.nav-dropdown-col) > a { border-bottom: 0px !important; }
.nav-dropdown > li.nav-dropdown-col, .nav-dropdown > li.image-column { text-align: left; display: table-cell; white-space: nowrap; width: 160px; min-width: 160px; border-right: 1px solid transparent; }
.nav-dropdown .menu-item-has-children > a, .nav-dropdown .title > a, .nav-dropdown .nav-dropdown-col > a { text-transform: uppercase; font-size: 0.8em; font-weight: bolder; color: rgb(0, 0, 0); }
.nav-dropdown-default .nav-column li > a, .nav-dropdown.nav-dropdown-default > li > a { padding-left: 0px; padding-right: 0px; margin: 0px 10px; border-bottom: 1px solid rgb(236, 236, 236); }
.nav-dropdown-default { padding: 20px; }
.nav-dropdown-has-arrow li.has-dropdown::after, .nav-dropdown-has-arrow li.has-dropdown::before { bottom: -2px; z-index: 10; opacity: 0; left: 50%; border: solid transparent; content: ""; height: 0px; width: 0px; position: absolute; pointer-events: none; }
.nav-dropdown-has-arrow li.has-dropdown::after { border-color: rgba(221, 221, 221, 0) rgba(221, 221, 221, 0) rgb(255, 255, 255); border-width: 8px; margin-left: -8px; }
.nav-dropdown-has-arrow li.has-dropdown::before { z-index: -999; border-bottom-color: rgb(221, 221, 221); border-width: 11px; margin-left: -11px; }
.nav-dropdown-has-arrow li.current-dropdown.has-dropdown::before, .nav-dropdown-has-arrow li.current-dropdown.has-dropdown::after { transition: opacity 0.25s; opacity: 1; }
.nav p { margin: 0px; padding-bottom: 0px; }
.nav, .nav ul:not(.nav-dropdown) { margin: 0px; padding: 0px; }
.nav > li > a.button, .nav > li > button { margin-bottom: 0px; }
.nav { width: 100%; position: relative; display: flex; flex-flow: wrap; align-items: center; }
.nav > li { display: inline-block; list-style: none; padding: 0px; position: relative; margin: 0px 7px; transition: background-color 0.3s; }
.nav > li > a { padding: 10px 0px; display: inline-flex; flex-wrap: wrap; align-items: center; }
.nav-small.nav > li.html { font-size: 0.75em; }
.nav-center { justify-content: center; }
.nav-left { justify-content: flex-start; }
.nav-right { justify-content: flex-end; }
@media (max-width: 849px) {
.medium-nav-center { justify-content: center; }
}
.nav > li > a, .nav-dropdown > li > a, .nav-column > li > a { color: rgba(102, 102, 102, 0.85); transition: 0.2s; }
.nav-dropdown > li > a, .nav-column > li > a { display: block; }
.nav > li > a:hover, .nav > li.active > a, .nav > li.current > a, .nav > li > a.active, .nav > li > a.current, .nav-dropdown li.active > a, .nav-column li.active > a, .nav-dropdown > li > a:hover, .nav-column li > a:hover { color: rgba(17, 17, 17, 0.85); }
.nav li:first-child { margin-left: 0px !important; }
.nav li:last-child { margin-right: 0px !important; }
.nav-uppercase > li > a { letter-spacing: 0.02em; text-transform: uppercase; font-weight: bolder; }
@media (min-width: 850px) {
.nav-divided > li { margin: 0px 0.7em; }
}
.nav-box > li.active > a, .nav-pills > li.active > a { opacity: 1; color: rgb(255, 255, 255); background-color: rgb(68, 96, 132); }
.nav-box > li, .nav-tabs > li, .nav-outline > li, .nav-pills > li { margin: 0px; }
.nav-box > li > a { padding: 0px 0.75em; line-height: 2.5em; }
.toggle { height: auto; width: 45px; line-height: 1; padding: 0px; color: currentcolor; opacity: 0.6; margin: 0px 5px 0px 0px; box-shadow: none !important; }
.toggle i { font-size: 1.8em; transition: 0.3s; }
.toggle:focus { color: currentcolor; }
.toggle:hover { cursor: pointer; opacity: 1; }
.active > .toggle { transform: rotate(-180deg); }
.active > ul.children { display: block !important; }
.nav.nav-vertical { flex-flow: column; }
.nav-vertical li { list-style: none; margin: 0px; width: 100%; }
.nav-vertical li li { font-size: 1em; padding-left: 0.5em; }
.nav-vertical > li { display: flex; flex-flow: wrap; align-items: center; }
.nav-vertical > li ul { width: 100%; }
.nav-vertical li li.menu-item-has-children { margin-bottom: 1em; }
.nav-vertical > li > ul > li a, .nav-vertical > li > a { display: block; width: auto; flex-grow: 1; }
.nav-vertical li li.menu-item-has-children > a { color: rgb(0, 0, 0); text-transform: uppercase; font-size: 0.8em; font-weight: bolder; }
.nav-vertical > li.html { padding-top: 1em; padding-bottom: 1em; }
.nav-vertical > li > ul li a { transition: color 0.2s; color: rgb(102, 102, 102); }
.nav-vertical > li > ul li a:hover { opacity: 1; color: rgb(17, 17, 17); }
.nav-vertical > li > ul { margin: 0px 0px 2em; padding-left: 1em; }
.nav .children { position: fixed; opacity: 0; left: -99999px; transition: background-color 0.6s, transform 0.3s, opacity 0.3s; transform: translateX(-10px); }
.nav .active > .children { position: inherit; opacity: 1; left: auto; padding-bottom: 30px; transform: translateX(0px); }
.nav-sidebar.nav-vertical > li.menu-item.active, .nav-sidebar.nav-vertical > li.menu-item:hover { background-color: rgba(0, 0, 0, 0.05); }
.nav-sidebar.nav-vertical > li + li { border-top: 1px solid rgb(236, 236, 236); }
.nav-vertical > li + li { border-top: 1px solid rgb(236, 236, 236); }
.nav-vertical .social-icons, .nav-vertical .header-button { display: block; width: 100%; }
.button, button, input[type="submit"], input[type="reset"], input[type="button"] { position: relative; display: inline-block; background-color: transparent; text-transform: uppercase; font-size: 0.97em; letter-spacing: 0.03em; touch-action: none; cursor: pointer; font-weight: bolder; text-align: center; color: currentcolor; text-decoration: none; border: 1px solid transparent; vertical-align: middle; border-radius: 0px; margin-top: 0px; margin-right: 1em; text-shadow: none; line-height: 2.4em; min-height: 2.5em; padding: 0px 1.2em; max-width: 100%; transition: transform 0.3s, border 0.3s, background 0.3s, box-shadow 0.3s, opacity 0.3s, color 0.3s; text-rendering: optimizelegibility; box-sizing: border-box; }
.button.is-outline { line-height: 2.19em; }
.button, input[type="submit"], input[type="submit"].button, input[type="reset"].button, input[type="button"].button { color: rgb(255, 255, 255); background-color: var(--primary-color); border-color: rgba(0, 0, 0, 0.05); }
.button.is-outline, input[type="submit"].is-outline, input[type="reset"].is-outline, input[type="button"].is-outline { border: 2px solid; background-color: transparent; }
.dark .button.is-form:hover, .button:hover, input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover { outline: none; opacity: 1; color: rgb(255, 255, 255); box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 0px 100px inset; }
.is-outline { color: silver; }
.is-outline:hover { box-shadow: none !important; }
.is-outline:hover, .primary.is-outline:hover { color: rgb(255, 255, 255); background-color: rgb(68, 96, 132); border-color: rgb(68, 96, 132); }
form { margin-bottom: 0px; }
input[type="email"], input[type="date"], input[type="search"], input[type="number"], input[type="text"], input[type="tel"], input[type="url"], input[type="password"], textarea, select, .select-resize-ghost, .select2-container .select2-choice, .select2-container .select2-selection { box-sizing: border-box; border: 1px solid rgb(221, 221, 221); padding: 0px 0.75em; height: 2.507em; font-size: 0.97em; border-radius: 0px; max-width: 100%; width: 100%; vertical-align: middle; background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 2px inset; transition: color 0.3s, border 0.3s, background 0.3s, opacity 0.3s; }
input[type="email"], input[type="search"], input[type="number"], input[type="url"], input[type="tel"], input[type="text"], textarea { appearance: none; }
textarea { padding-top: 0.7em; min-height: 120px; }
input[type="email"]:focus, input[type="search"]:focus, input[type="number"]:focus, input[type="tel"]:focus, input[type="text"]:focus, input[type="password"]:focus, textarea:focus, select:focus { box-shadow: rgb(204, 204, 204) 0px 0px 5px; outline: 0px; color: rgb(51, 51, 51); background-color: rgb(255, 255, 255); opacity: 1 !important; }
label, legend { font-weight: bold; display: block; font-size: 0.9em; margin-bottom: 0.4em; }
input[type="checkbox"], input[type="radio"] { display: inline; margin-right: 10px; font-size: 16px; }
select, .select-resize-ghost, .select2-container .select2-choice, .select2-container .select2-selection { box-shadow: rgba(0, 0, 0, 0.02) 0px -1.4em 1em 0px inset; background-color: rgb(255, 255, 255); appearance: none; background-image: url("data:image/svg+xml;charset=utf8, %3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-chevron-down'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); background-position: right 0.45em top 50%; background-repeat: no-repeat; padding-right: 1.4em; background-size: auto 16px; border-radius: 0px; display: block; }
input:hover, textarea:hover, select:hover { box-shadow: rgba(0, 0, 0, 0) 0px -1.8em 1em 0px inset; }
.links > li > a::before, i[class^="icon-"], i[class*=" icon-"] { margin: 0px; padding: 0px; display: inline-block; position: relative; line-height: 1.2; font-family: fl-icons !important; speak: none !important; font-style: normal !important; font-weight: normal !important; font-variant: normal !important; text-transform: none !important; }
button i, .button i { vertical-align: middle; top: -1.5px; }
button.icon:not(.button), a.icon:not(.button) { font-family: sans-serif; margin-left: 0.25em; margin-right: 0.25em; font-size: 1.2em; }
.header a.icon:not(.button) { margin-left: 0.3em; margin-right: 0.3em; }
.header .nav-small a.icon:not(.button) { font-size: 1em; }
.button.icon { margin-left: 0.12em; margin-right: 0.12em; min-width: 2.5em; padding-left: 0.6em; padding-right: 0.6em; display: inline-block; }
.button.icon i { font-size: 1.2em; }
.button.icon.circle { padding-left: 0px; padding-right: 0px; }
.button.icon.circle > i { margin: 0px 8px; }
.button.icon.circle > i:only-child { margin: 0px; }
.nav > li > a > i { vertical-align: middle; transition: color 0.3s; font-size: 20px; }
.nav > li > a > i.icon-menu { font-size: 1.9em; }
.nav > li.has-icon > a > i { min-width: 1em; }
.has-dropdown .icon-angle-down { font-size: 16px; margin-left: 0.2em; opacity: 0.6; }
img { transition: opacity 1s; opacity: 1; }
.mfp-bg { top: 0px; left: 0px; width: 100%; height: 100%; z-index: 1042; overflow: hidden; position: fixed; background: rgb(11, 11, 11); opacity: 0; transition: opacity 0.25s; }
.mfp-bg.mfp-ready { opacity: 0.6; }
.mfp-wrap { top: 0px; left: 0px; width: 100%; height: 100%; z-index: 1043; position: fixed; backface-visibility: hidden; outline: none !important; }
.mfp-container { text-align: center; position: absolute; width: 100%; height: 100%; left: 0px; top: 0px; padding: 30px; box-sizing: border-box; }
.mfp-container::before { content: ""; display: inline-block; height: 100%; vertical-align: middle; }
.mfp-content { position: relative; display: inline-block; vertical-align: middle; max-width: 100%; margin: 0px auto; text-align: left; z-index: 1045; transform: translateY(-30px); opacity: 0; transition: transform 0.5s, opacity 0.3s; }
.mfp-ready .mfp-content { opacity: 1; transform: translateY(0px); }
.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content { width: 100%; cursor: auto; }
.mfp-auto-cursor .mfp-content { cursor: auto; }
.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter { user-select: none; }
.mfp-hide { display: none !important; }
.mfp-preloader { color: rgb(204, 204, 204); position: absolute; top: 50%; width: auto; text-align: center; margin-top: -0.8em; left: 8px; right: 8px; z-index: 1044; }
.mfp-s-ready .mfp-preloader { display: none; }
.mfp-close { cursor: pointer; outline: none; z-index: 1046; box-shadow: none; position: fixed; top: 0px; right: 0px; text-decoration: none; text-align: center; opacity: 0; padding: 0px; mix-blend-mode: difference; color: rgb(255, 255, 255); font-style: normal; font-weight: 300; font-size: 40px; min-height: 0px; width: 40px; backface-visibility: hidden; height: 40px; line-height: 40px; font-family: Arial, monospace; transition: opacity 0.3s, transform 0.3s; transform: translateY(50%) translateZ(1px); margin: 0px !important; }
.mfp-ready .mfp-close { opacity: 0.5; transform: translateY(0px) translateZ(1px); }
.mfp-close:hover { opacity: 1; }
.off-canvas .mfp-content { }
.off-canvas .nav-vertical > li > a { padding-top: 15px; padding-bottom: 15px; }
.off-canvas .nav-vertical li li > a { padding-top: 5px; padding-bottom: 5px; }
.off-canvas-right .mfp-content, .off-canvas-left .mfp-content { position: fixed; top: 0px; bottom: 0px; width: 260px; background-color: rgba(255, 255, 255, 0.95); left: 0px; overflow: hidden auto; transition: transform 0.2s; transform: translateX(-270px); box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 10px 0px; }
.off-canvas-left.mfp-ready .mfp-content, .off-canvas-right.mfp-ready .mfp-content { transform: translate(0px, 0px); opacity: 1; }
.has-off-canvas .current-lightbox-clicked { opacity: 0 !important; transform: translateY(-7px); }
.has-off-canvas.has-off-canvas-right .current-lightbox-clicked, .has-off-canvas.has-off-canvas-left .current-lightbox-clicked { transform: translateX(-7px); }
.off-canvas .sidebar-menu { padding: 30px 0px; }
.off-canvas:not(.off-canvas-center) .nav-vertical li > a { padding-left: 20px; }
.off-canvas:not(.off-canvas-center) li.html { padding: 20px; }
table { width: 100%; margin-bottom: 1em; border-color: rgb(236, 236, 236); border-spacing: 0px; }
th, td { padding: 0.5em; text-align: left; border-bottom: 1px solid rgb(236, 236, 236); line-height: 1.3; font-size: 0.9em; }
td { color: rgb(102, 102, 102); }
th:first-child, td:first-child { padding-left: 0px; }
th:last-child, td:last-child { padding-right: 0px; }
label { color: rgb(34, 34, 34); }
a { color: rgb(51, 72, 98); text-decoration: none; }
a:focus, .button:focus, button:focus, input:focus { outline: none; }
a.plain { color: currentcolor; transition: color 0.3s, opacity 0.3s, transform 0.3s; }
.nav-dark a.plain:hover { opacity: 0.7; }
a:hover, a.remove:hover, a.icon-circle:hover { color: rgb(0, 0, 0); }
ul { list-style: disc; }
ol { list-style: decimal; }
ol, ul { margin-top: 0px; padding: 0px; }
ul ul, ul ol, ol ol, ol ul { margin: 1.5em 0px 1.5em 3em; }
li { margin-bottom: 0.6em; }
.entry-content ol li, .entry-summary ol li, .col-inner ol li, .entry-content ul li, .entry-summary ul li, .col-inner ul li { margin-left: 1.3em; }
.button, button, input, textarea, select, fieldset { margin-bottom: 1em; }
pre, blockquote, form, figure, p, dl, ul, ol { margin-bottom: 1.3em; }
form p { margin-bottom: 0.5em; }
body { line-height: 1.6; }
h1, h2, h3, h4, h5, h6 { color: rgb(85, 85, 85); width: 100%; margin-top: 0px; margin-bottom: 0.5em; text-rendering: optimizespeed; }
.h1, h1 { font-size: 1.7em; line-height: 1.3; }
.h2, h2 { font-size: 1.6em; line-height: 1.3; }
.h3, h3 { font-size: 1.25em; }
.h4, h4 { font-size: 1.125em; }
@media (max-width: 549px) {
h1 { font-size: 1.4em; }
h2 { font-size: 1.2em; }
h3 { font-size: 1em; }
}
p { margin-top: 0px; }
h1 > span, h2 > span, h3 > span, h4 > span, h5 > span, h6 > span, p.headline > span { -webkit-box-decoration-break: clone; box-decoration-break: clone; }
.uppercase, h6, th, span.widget-title { line-height: 1.05; letter-spacing: 0.05em; text-transform: uppercase; }
.thin-font, .is-thin { font-weight: 300 !important; }
.is-small, .is-small.button { font-size: 0.8em; }
.nav > li > a { font-size: 0.8em; }
.nav > li.html { font-size: 0.85em; }
.container::after, .row::after, .clearfix::after, .clear::after { content: ""; display: table; clear: both; }
@media (min-width: 850px) {
[data-show="show-for-medium"], .show-for-medium { display: none !important; }
}
@media (max-width: 849px) {
[data-show="hide-for-medium"], .hide-for-medium { display: none !important; }
}
.full-width, .expand { display: block; width: 100% !important; max-width: 100% !important; padding-left: 0px !important; padding-right: 0px !important; }
.ml-0 { margin-left: 0px !important; }
.fixed { position: fixed !important; z-index: 12; }
.bottom { bottom: 0px; }
.fill { position: absolute; inset: 0px; height: 100%; padding: 0px !important; margin: 0px !important; }
.circle { object-fit: cover; border-radius: 999px !important; }
.z-1 { z-index: 21; }
.no-scrollbar { }
.no-scrollbar::-webkit-scrollbar { width: 0px !important; height: 0px !important; }
.screen-reader-text { clip: rect(1px, 1px, 1px, 1px); height: 1px; width: 1px; overflow: hidden; position: absolute !important; }
.screen-reader-text:focus { background-color: rgb(241, 241, 241); border-radius: 3px; box-shadow: rgba(0, 0, 0, 0.6) 0px 0px 2px 2px; color: rgb(33, 117, 155); display: block; font-size: 0.875rem; font-weight: bold; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; clip: auto !important; }
.dark .nav > li > a:hover, .dark .nav > li.active > a, .dark .nav > li > a.active .nav-dark .nav > li.current > a, .nav-dark .nav > li > a:hover, .nav-dark .nav > li.active > a, .nav-dropdown.dark > li > a:hover, .nav-dropdown.dark .nav-column > li > a:hover, .nav-dark a.plain:hover, .nav-dark .nav > li > a.active { color: rgb(255, 255, 255); }
.dark .nav-vertical li li.menu-item-has-children > a, .nav-dark .nav-vertical li li.menu-item-has-children > a, .nav-dark .nav > li.html, .nav-dark .header-button { color: rgb(255, 255, 255); }
html { overflow-x: hidden; }
#wrapper, #main { background-color: rgb(255, 255, 255); position: relative; }
.page-wrapper { padding-top: 30px; padding-bottom: 30px; }
.header, .header-wrapper { width: 100%; z-index: 30; position: relative; background-size: cover; background-position: 50% 0px; transition: background-color 0.3s, opacity 0.3s; }
.header-bg-color { background-color: rgba(255, 255, 255, 0.9); }
.header-top, .header-bottom { display: flex; align-items: center; }
.header-bg-image, .header-bg-color { background-position: 50% 0px; transition: background 0.4s; }
.header-top { background-color: rgb(68, 96, 132); z-index: 11; position: relative; min-height: 20px; }
.header-main { z-index: 10; position: relative; }
.header-bottom { z-index: 9; position: relative; min-height: 35px; }
.top-divider { margin-bottom: -1px; border-top: 1px solid; opacity: 0.1; }
.stuck { top: 0px; position: fixed; left: 0px; right: 0px; margin: 0px auto; }
.sticky-jump .stuck { animation: 0.6s ease 0s 1 normal none running stuckMoveDown; }
.stuck .header-inner, .stuck .logo, .stuck .logo img { padding-top: 0px; margin-top: 0px; }
.header-wrapper:not(.stuck) .logo img { transition: max-height 0.5s; }
.header.show-on-scroll .hide-for-sticky, .stuck .hide-for-sticky { display: none; }
.header-wrapper.stuck, .header-shadow .header-wrapper, .layout-shadow #wrapper { box-shadow: rgba(0, 0, 0, 0.15) 1px 1px 10px; }
.header-full-width .container { max-width: 100% !important; }
.post { margin: 0px 0px 30px; }
.entry-content { padding-top: 1.5em; padding-bottom: 1.5em; }
@media (min-width: 850px) {
.aligncenter { clear: both; display: block; margin: 0px auto; }
}
img.size-full.alignnone { margin-bottom: 2em; }
.footer-wrapper { width: 100%; position: relative; }
.absolute-footer, html { background-color: rgb(91, 91, 91); }
.back-to-top { margin: 0px; opacity: 0; bottom: 20px; right: 20px; pointer-events: none; transform: translateY(30%); }
.back-to-top.active { opacity: 1; pointer-events: inherit; transform: translateY(0px); }
.logo { line-height: 1; margin: 0px; }
.logo a { text-decoration: none; display: block; color: rgb(68, 96, 132); font-size: 32px; text-transform: uppercase; font-weight: bolder; margin: 0px; }
.logo img { display: block; width: auto; }
.header-logo-dark, .nav-dark .header-logo, .header-logo-sticky, .sticky .dark .header-logo-dark, .sticky .has-sticky-logo .header-logo { display: none !important; }
.logo-center .flex-left { order: 1; flex: 1 1 0px; }
.logo-center .logo { order: 2; text-align: center; margin: 0px 30px; }
.logo-center .logo img { margin: 0px auto; }
.logo-center .flex-right { order: 3; flex: 1 1 0px; }
@media screen and (max-width: 849px) {
.header-inner .nav { flex-wrap: nowrap; }
.medium-logo-center .flex-left { order: 1; flex: 1 1 0px; }
.medium-logo-center .logo { order: 2; text-align: center; margin: 0px 15px; }
.medium-logo-center .logo img { margin: 0px auto; }
.medium-logo-center .flex-right { flex: 1 1 0px; order: 3; }
}
.social-icons { display: inline-block; vertical-align: middle; font-size: 0.85em; color: rgb(153, 153, 153); }
.html .social-icons { font-size: 1em; }
.social-icons i { min-width: 1em; }
.nav-dark .social-icons, .dark .social-icons { color: rgb(255, 255, 255); }
@keyframes stuckMoveDown { 
  0% { transform: translateY(-100%); }
  100% { transform: translateY(0px); }
}

/* ===== 2. Style portalu (dawny flatsome-child/style.css 5.43) ===== */
/* Paleta: czerwien #9b2121 (jak logo), szarosci #666666 / #555 (do 30.10 #777777 - za slaby kontrast WCAG), jasny #f1f1f1.
   Wersje pliku nadaje motyw automatycznie (data modyfikacji), nie trzeba niczego podbijac. */

/* ===== Uklad na cala szerokosc ekranu (zamiast kontenera 1080 px Flatsome) =====
   Margines boczny rosnie z ekranem: 16 px na telefonie, do 56 px na duzych monitorach. */
:root { --ig-gutter: clamp(16px, 3vw, 56px); }
.container,
.container-width,
.row,
.row.row-large,
.row.row-small,
.row.row-collapse {
    max-width: none;
}
.container {
    padding-left: var(--ig-gutter);
    padding-right: var(--ig-gutter);
}
/* Wiersze najwyzszego poziomu (poza kontenerem): krawedz tresci rowno z naglowkiem.
   Kolumny maja wlasne 15 px wewnetrznego odstepu, stad korekta. */
.row:not(.row .row):not(.container .row):not(.row-full-width) {
    max-width: calc(100% - 2 * (var(--ig-gutter) - 15px));
}
.row.row-large:not(.row .row):not(.container .row):not(.row-full-width) {
    max-width: calc(100% - 2 * (var(--ig-gutter) - 30px));
}
/* Wiersze ustawione w UX Builderze jako "pelna szerokosc" - ta sama krawedz co reszta strony. */
.row.row-full-width:not(.row .row):not(.container .row) {
    padding-left: calc(var(--ig-gutter) - 15px);
    padding-right: calc(var(--ig-gutter) - 15px);
}
.row.row-large.row-full-width:not(.row .row):not(.container .row) {
    padding-left: max(0px, calc(var(--ig-gutter) - 30px));
    padding-right: max(0px, calc(var(--ig-gutter) - 30px));
}
/* Animacje wejscia Flatsome (np. bounceIn = start w skali 130%) wystawaly poza ekran
   i na telefonie dawaly poziome przewijanie (blad byl tez na produkcji). "clip" nie psuje przyklejonego menu. */
#wrapper { overflow-x: clip; }
/* Tekst artykulu zostaje w wygodnej szerokosci czytania (~75 znakow), wysrodkowany w kolumnie. */
.blog-single .entry-content.single-page,
.blog-single .entry-header-text,
.blog-single .entry-author {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

/* ===== Dokumenty (polityka prywatnosci, cookies, regulaminy): tresc w <div class="ig-doc"> ===== */
.ig-doc { max-width: 800px; margin: 10px auto 40px; }
.ig-doc h1 { font-size: 2em; margin-bottom: .3em; }
.ig-doc h2 { font-size: 1.35em; margin-top: 1.6em; }
.ig-doc h3 { font-size: 1.1em; margin-top: 1.3em; color: #555; }
.ig-doc table { width: 100%; border-collapse: collapse; margin: .6em 0 1.2em; font-size: .92em; }
.ig-doc th, .ig-doc td { padding: 9px 12px; border: 1px solid #ddd; text-align: left; vertical-align: top; }
.ig-doc th { background: #f1f1f1; color: #555; font-weight: 700; }
.ig-doc code { font-size: .92em; background: #f1f1f1; padding: 1px 5px; border-radius: 3px; white-space: nowrap; }
.ig-doc td:first-child { min-width: 170px; }
@media (max-width: 600px) { .ig-doc table { display: block; overflow-x: auto; } }

/* ===== Gorny czerwony pasek: haslo portalu (H1 na stronie glownej, akapit na reszcie) ===== */
.header-top .ig-tagline {
    margin: 0;
    padding: 0;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .06em;
    text-transform: uppercase; /* w HTML zwykle zdanie - wielkie litery tylko wizualnie */
    color: #f1f1f1;
}
/* Pasek ma byc widoczny tez na tablecie/telefonie - jeden ten sam element, wiec zawsze tylko jeden H1. */
@media (max-width: 849px) {
    /* Flatsome ukrywa pasek na mobile (hide-for-medium), gdy mobilna wersja paska jest pusta -
       pusta jest celowo, bo duplikowala H1. Pokazujemy wersje glowna. */
    #top-bar.header-top.hide-for-medium { display: flex !important; }
    .header-wrapper.stuck #top-bar.header-top { display: none !important; } /* w przyklejonym menu bez paska */
    .header-top .flex-col.hide-for-medium.flex-left,
    .header-top .flex-col.hide-for-medium.flex-right { display: flex !important; }
    .header-top .flex-col.hide-for-medium.flex-center,
    .header-top .flex-col.show-for-medium { display: none !important; }
    .header-top .ig-tagline { font-size: 10px; letter-spacing: .03em; }
}

/* ===== Pole z logo: nizsze (bylo 200 px) - logo bez zmian, mniej pustego miejsca nad i pod nim ===== */
@media (min-width: 850px) {
    /* selektory z #header - Flatsome wypisuje swoje 200 px inline w <head> po tym pliku */
    #header .header-main { height: 150px; }
    #header .header-main #logo img { max-height: 150px; }
}

/* ===== Strona glowna (inc/ig-home.php): sekcje [ig_home_*] =====
   Naglowki sekcji to zwykle H2 w stylu motywu (kolor naglowkow #9b2121, Lato 700) - bez ozdobnikow. */
.ig-home-sec { padding: 60px var(--ig-gutter); }
.ig-home-h2 { margin: 0 0 10px; font-size: clamp(26px, 2.3vw, 34px); line-height: 1.2; }
.ig-home-sub { margin: 0 0 34px; color: #666666; font-size: 17px; max-width: 720px; }
.ig-btn {
    display: inline-block; padding: 12px 22px; border-radius: 3px; border: 2px solid #9b2121;
    background: #9b2121; color: #f1f1f1; font-weight: 700; font-size: 15px; line-height: 1.3;
    transition: background-color .25s, border-color .25s, color .25s;
}
.ig-btn:hover, .ig-btn:focus { background: #555; border-color: #555; color: #f1f1f1; }
.ig-btn.is-white { background: #fff; border-color: #fff; color: #9b2121; }
.ig-btn.is-white:hover { background: #f1f1f1; border-color: #f1f1f1; color: #9b2121; }
.ig-btn.is-outline { background: transparent; color: #9b2121; }
.ig-btn.is-outline:hover { background: #9b2121; color: #f1f1f1; }

.ig-home-h2.is-center, .ig-home-sub.is-center { text-align: center; margin-left: auto; margin-right: auto; }
.ig-hubs .ig-home-sub.is-center { margin-bottom: 50px; }
/* mapa: dzielnice rozwiniete na liscie podswietlaja sie na mapie */
.ig-dz .igm-d path { transition: fill .35s ease, stroke-width .35s ease; }
.ig-dz .igm-d.is-on path { fill: #9b2121; }
.ig-dz .igm-t { transition: fill .35s ease; }
.ig-dz .igm-t.is-on { fill: #fff; }
.ig-dz .igm svg { transition: filter .5s ease; }
.ig-dz .igm.is-all svg { filter: drop-shadow(0 0 1.5px #9b2121) drop-shadow(0 8px 18px rgba(155, 33, 33, .35)); }
.ig-dz .igm.is-all .igm-d path { stroke: #f1f1f1; stroke-width: 1.1; }
/* 1. Najnowsze wpisy - wachlarz kart */
.ig-fan-sec { padding-top: 40px; padding-bottom: 30px; overflow: hidden; }
.ig-fan-h { margin: 0 0 6px; text-align: center; color: #555; font-size: clamp(32px, 3.6vw, 52px); font-weight: 700; line-height: 1.1; }
.ig-fan-h span { color: #9b2121; }
.ig-fan-h { display: flex; align-items: center; justify-content: center; gap: 0; white-space: pre-wrap; }
.ig-fan-h::before { margin-right: 24px; } .ig-fan-h::after { margin-left: 24px; }
.ig-fan-h::before, .ig-fan-h::after { transform: translateY(.14em); } /* srodek wysokosci liter, nie linii tekstu */
.ig-fan-h::before, .ig-fan-h::after { content: ""; flex: 1; max-width: 280px; height: 2px; }
.ig-fan-h::before { background: linear-gradient(90deg, transparent, #9b2121); }
.ig-fan-h::after { background: linear-gradient(90deg, #9b2121, transparent); }
@media (max-width: 600px) { .ig-fan-h::before, .ig-fan-h::after { display: none; } .ig-fan-h { display: block; } }
.ig-fan { position: relative; max-width: 1240px; height: 480px; margin: 0 auto; }
.ig-fan__card {
    position: absolute; top: 70px; left: 38%; width: 24%; height: 330px; margin: 0; z-index: 1;
    background: #fff; padding: 8px; box-shadow: 0 12px 34px rgba(0, 0, 0, .2); transform-origin: 50% 120%;
    transition: transform .55s cubic-bezier(.2, .7, .2, 1), box-shadow .55s;
}
.ig-fan__link { position: relative; display: flex; align-items: flex-end; height: 100%; overflow: hidden; color: #fff; isolation: isolate; }
.ig-fan__link:hover, .ig-fan__link:focus { color: #fff; }
.ig-fan__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform .9s cubic-bezier(.2, .7, .2, 1); }
.ig-fan__link::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 35%, rgba(0, 0, 0, .8)); }
.ig-fan__body { display: block; padding: 14px 16px; }
.ig-fan__title { margin: 0 0 5px; color: #fff; font-size: 15px; line-height: 1.28; font-weight: 700; text-shadow: 0 1px 8px rgba(0, 0, 0, .35); text-transform: none; letter-spacing: 0; }
.ig-fan__date { font-size: 12px; color: rgba(241, 241, 241, .85); }
.ig-fan__card.f0 { transform: translateX(-142%) rotate(-12deg); }
.ig-fan__card.f1 { transform: translateX(-74%) rotate(-6deg); z-index: 2; }
.ig-fan__card.f2 { left: 36%; top: 40px; width: 28%; height: 380px; z-index: 5; transform: none; }
.ig-fan__card.f3 { transform: translateX(74%) rotate(6deg); z-index: 2; }
.ig-fan__card.f4 { transform: translateX(142%) rotate(12deg); }
.ig-fan__card.f2 .ig-fan__title { font-size: 24px; line-height: 1.2; }
.ig-fan__card.f0 .ig-fan__body, .ig-fan__card.f1 .ig-fan__body { padding-right: 30%; }
.ig-fan__card.f3 .ig-fan__body, .ig-fan__card.f4 .ig-fan__body { padding-left: 32%; }
.ig-fan__card:hover { z-index: 20; box-shadow: 0 26px 54px rgba(0, 0, 0, .3); }
.ig-fan__card:hover .ig-fan__img { transform: scale(1.05); }
.ig-fan__card:hover .ig-fan__body { padding-left: 16px; padding-right: 16px; }
.ig-fan__card.f0:hover { transform: translateX(-150%) translateY(-34px) rotate(-4deg); }
.ig-fan__card.f1:hover { transform: translateX(-80%) translateY(-34px) rotate(-2deg); }
.ig-fan__card.f2:hover { transform: translateY(-24px) scale(1.03); }
.ig-fan__card.f3:hover { transform: translateX(80%) translateY(-34px) rotate(2deg); }
.ig-fan__card.f4:hover { transform: translateX(150%) translateY(-34px) rotate(4deg); }
@media (prefers-reduced-motion: reduce) { .ig-fan__card, .ig-fan__img { transition: none !important; } }
@media (max-width: 1100px) and (min-width: 901px) { .ig-fan { height: 430px; } .ig-fan__card { height: 290px; } .ig-fan__card.f2 { height: 340px; } .ig-fan__card.f2 .ig-fan__title { font-size: 19px; } .ig-fan__title { font-size: 13px; } }
@media (max-width: 900px) {
    .ig-fan { height: auto; display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
    .ig-fan__card, .ig-fan__card.f2 { position: relative; left: auto; top: auto; width: auto; height: 240px; transform: none !important; }
    .ig-fan__card.is-big { grid-column: span 2; height: 340px; }
    .ig-fan__card .ig-fan__body { padding: 14px 16px !important; }
}
@media (max-width: 600px) {
    .ig-fan { grid-template-columns: 1fr; }
    .ig-fan__card.is-big { grid-column: auto; }
    .ig-fan__card.f2 .ig-fan__title { font-size: 21px; }
}
/* 1. (stare) mozaika - nieuzywana od 2026-10-15 */
.ig-mosaic-sec { padding-top: 34px; padding-bottom: 20px; }
.ig-mosaic-sec .ig-home-h2 { margin-bottom: 18px; }
.ig-mosaic { display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 240px 240px; gap: 12px; }
.ig-mosaic__item { position: relative; margin: 0; min-height: 0; }
.ig-mosaic__item.is-big { grid-row: span 2; }
.ig-mosaic__link { position: absolute; inset: 0; display: flex; align-items: flex-end; overflow: hidden; border-radius: 4px; color: #fff; isolation: isolate; background: #555; }
.ig-mosaic__link:hover, .ig-mosaic__link:focus { color: #fff; }
.ig-mosaic__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform .9s cubic-bezier(.2, .7, .2, 1); }
.ig-mosaic__link::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, .8)); }
.ig-mosaic__date { position: absolute; top: 14px; left: 14px; z-index: 2; width: 54px; padding: 6px 0 5px; display: flex; flex-direction: column; align-items: center; background: #9b2121; color: #f1f1f1; border-radius: 3px; line-height: 1; text-align: center; box-shadow: 0 4px 12px rgba(0, 0, 0, .25); }
.ig-mosaic__date .d { font-size: 21px; font-weight: 700; }
.ig-mosaic__date .m { margin-top: 3px; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ig-mosaic__date .y { margin-top: 2px; font-size: 10px; opacity: .8; }
.is-big .ig-mosaic__date { width: 62px; top: 18px; left: 18px; }
.is-big .ig-mosaic__date .d { font-size: 25px; }
.ig-mosaic__body { position: relative; padding: 18px 22px 20px; max-width: 100%; transition: transform .5s cubic-bezier(.2, .7, .2, 1); }
.ig-mosaic__title { margin: 0; color: #fff; font-size: 19px; line-height: 1.28; font-weight: 700; text-shadow: 0 1px 10px rgba(0, 0, 0, .35); text-transform: none; letter-spacing: 0; }
.ig-mosaic__title span { background: linear-gradient(#9b2121, #9b2121) 0 100% / 0 3px no-repeat; padding-bottom: 2px; transition: background-size .5s cubic-bezier(.2, .7, .2, 1); }
.is-big .ig-mosaic__body { padding: 26px 30px 28px; max-width: 86%; }
.is-big .ig-mosaic__title { font-size: 31px; line-height: 1.2; }
.ig-mosaic__lead { margin: 10px 0 0; color: rgba(241, 241, 241, .92); font-size: 16px; line-height: 1.5; }
.ig-mosaic__cta { position: absolute; right: 14px; top: 14px; z-index: 2; padding: 7px 12px; border-radius: 3px; background: #9b2121; color: #f1f1f1; font-size: 13px; font-weight: 700; letter-spacing: .04em; opacity: 0; transform: translateX(-10px); transition: opacity .35s, transform .45s cubic-bezier(.2, .7, .2, 1); }
.ig-mosaic__cta span { display: inline-block; margin-left: 4px; transition: transform .45s cubic-bezier(.2, .7, .2, 1); }
.is-big .ig-mosaic__cta { right: 18px; top: 18px; font-size: 14px; }
.ig-mosaic__link:hover .ig-mosaic__img, .ig-mosaic__link:focus-visible .ig-mosaic__img { transform: scale(1.06); }
.ig-mosaic__link:hover .ig-mosaic__title span, .ig-mosaic__link:focus-visible .ig-mosaic__title span { background-size: 100% 3px; }
.ig-mosaic__link:hover .ig-mosaic__cta, .ig-mosaic__link:focus-visible .ig-mosaic__cta { opacity: 1; transform: none; }
.ig-mosaic__link:hover .ig-mosaic__cta span { transform: translateX(3px); }
.ig-mosaic__link:hover .ig-mosaic__body { transform: translateY(-4px); }

/* 2. Dzialy portalu - naprzemiennie */
.ig-hub { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(28px, 5vw, 80px); align-items: center; margin: 0 0 70px; }
.ig-hub:last-child { margin-bottom: 10px; }
.ig-hub.is-rev .ig-hub__img { order: 2; }
.ig-hub__img { position: relative; display: block; aspect-ratio: 3 / 2; border-radius: 4px; }
.ig-hub__img::before { content: ""; position: absolute; inset: 0; transform: translate(14px, 14px); border: 2px solid #9b2121; border-radius: 4px; transition: transform .5s cubic-bezier(.2, .7, .2, 1); }
.ig-hub.is-rev .ig-hub__img::before { transform: translate(-14px, 14px); }
.ig-hub__img img { position: relative; display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 4px; transition: transform .5s cubic-bezier(.2, .7, .2, 1); }
.ig-hub__img:hover img { transform: translate(-4px, -4px); }
.ig-hub__img:hover::before { transform: translate(20px, 20px); }
.ig-hub.is-rev .ig-hub__img:hover img { transform: translate(4px, -4px); }
.ig-hub.is-rev .ig-hub__img:hover::before { transform: translate(-20px, 20px); }
.ig-hub__title { margin: 0 0 12px; font-size: clamp(24px, 2.2vw, 32px); line-height: 1.15; }
.ig-hub__title a { color: inherit; }
.ig-hub__title a:hover { color: #555; }
.ig-home-sec h2 a, .ig-home-sec h3 a { color: inherit; }
.ig-hub__desc { margin: 0 0 16px; font-size: 17px; color: #555; max-width: 560px; }
.ig-hub__posts { list-style: none; margin: 0 0 22px; padding: 0; max-width: 560px; }
.ig-hub__posts li { margin: 0; border-top: 1px solid #ececec; list-style: none; }
.ig-hub__posts li:last-child { border-bottom: 1px solid #ececec; }
.ig-hub__posts a { position: relative; display: block; padding: 9px 0 9px 24px; font-weight: 700; color: #555; font-size: 15px; line-height: 1.4; }
.ig-hub__posts a::before { content: ""; position: absolute; left: 2px; top: calc(9px + .7em - 5px); width: 9px; height: 10px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 10'%3E%3Cpath d='M0 0v10l9-5z' fill='%239b2121'/%3E%3C/svg%3E") no-repeat center / contain; transition: transform .3s; }
.ig-hub__posts a:hover { color: #9b2121; }
.ig-hub__posts a:hover::before { transform: translateX(4px); }

/* 3. Dzielnice - mapa na polowie + lista w 3 kolumnach */
.ig-dz { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(24px, 4vw, 64px); align-items: center; background: #f1f1f1; }
.ig-dz > * { min-width: 0; }
@media (min-width: 901px) { .ig-dz { align-items: start; } .ig-dz__map { position: sticky; top: 110px; } } /* przewijana mapa na telefonie nie rozpycha siatki */
.ig-dz__map .igm { max-width: none; margin: 0; }
.ig-dz__lead { margin: 0 0 16px; color: #555; }
.ig-dz__list { columns: 3; column-gap: 18px; margin: 0 0 18px; }
.ig-dz__list details { break-inside: avoid; border-bottom: 1px solid #dcdcdc; }
.ig-dz__list summary { cursor: pointer; padding: 5px 0; font-weight: 700; font-size: 14px; color: #555; list-style: none; display: flex; justify-content: space-between; gap: 6px; }
.ig-dz__list summary::-webkit-details-marker { display: none; }
.ig-dz__list summary::after { content: "+"; color: #9b2121; flex: none; }
.ig-dz__list details[open] summary { color: #9b2121; }
.ig-dz__list details[open] summary::after { content: "–"; }
.ig-dz__list summary:hover { color: #9b2121; }
.ig-dz__list details p { margin: 0 0 6px; font-size: 13px; line-height: 1.45; color: #666666; }
.ig-dz__list details a { display: inline-block; margin: 0 0 9px; font-size: 13px; font-weight: 700; color: #9b2121; }
.ig-dz__list details a:hover { color: #555; }
.ig-dz__arr { width: 12px; height: 12px; margin-left: 5px; vertical-align: -1px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
/* mapa na stronie glownej nie ma linkow (role=button) - klikniecie rozwija dzielnice na liscie */
.ig-dz .igm-d { cursor: pointer; }
.ig-dz .igm-d:focus-visible path { fill: #9b2121; }
/* rozwinieta dzielnica: delikatnie jasniejsze tlo (nie mocna biel), czerwona kreska z lewej i oddech wokol tekstu */
.ig-dz__list details[open] { margin: 14px 0 10px; padding: 0 12px 6px; border: 1px solid #cfcfcf; }
.ig-dz__list details[open] summary { display: inline-flex; margin: -.75em 0 2px -8px; padding: 0 8px; background: #f1f1f1; }
.ig-dz__list details[open] summary::after { margin-left: 8px; }
.ig-dz__list details[open] p { margin-top: 2px; }
.ig-dz__list details.is-flash { animation: ig-dz-in .45s ease; }
@keyframes ig-dz-in { from { opacity: .3; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .ig-dz__list details.is-flash { animation: none; } }
.ig-dz__summary { margin: 0; font-size: 15px; color: #555; }
.ig-dz__summary a { color: #9b2121; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }

/* 4. O nas */
.ig-about { display: grid; grid-template-columns: .55fr 1.45fr; gap: clamp(24px, 4vw, 64px); align-items: center; }
.ig-about__mark { display: grid; place-items: center; aspect-ratio: 1; max-width: 280px; width: 100%; margin: auto; background: #f1f1f1; border-radius: 50%; }
.ig-about__mark img { width: 72%; height: auto; }
.ig-about__txt p { max-width: 760px; font-size: 17px; margin: 0 0 22px; }

/* 5. Kontakt */
.ig-contact { display: flex; justify-content: space-between; align-items: center; gap: 30px 60px; flex-wrap: wrap; background: #9b2121; color: #f1f1f1; }
.ig-contact .ig-home-h2 { color: #fff; max-width: 820px; }
.ig-contact__txt { flex: 1 1 560px; }
.ig-contact__txt p { margin: 0; max-width: 820px; color: rgba(241, 241, 241, .92); font-size: 17px; }
.ig-contact__act { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.ig-contact__mail { color: #fff; font-weight: 700; border-bottom: 1px solid rgba(255, 255, 255, .5); }
.ig-contact__mail:hover { color: #f1f1f1; border-color: #fff; }

/* 6. Materialy sponsorowane + Polecane */
.ig-sp__wrap { display: grid; grid-template-columns: 1fr; gap: 28px; margin-bottom: 28px; }
.ig-sp__wrap.has-pol { grid-template-columns: 3fr 1fr; }
.ig-sp__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.ig-sp__card { margin: 0; }
.ig-sp__card a { display: block; color: #555; }
.ig-sp__img { display: block; aspect-ratio: 16 / 10; overflow: hidden; border-radius: 4px; margin-bottom: 12px; background: #f1f1f1; }
.ig-sp__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2, .7, .2, 1); }
.ig-sp__card:hover img { transform: scale(1.05); }
.ig-sp__tag { display: inline-block; margin-bottom: 6px; padding: 2px 7px; border: 1px solid #ccc; border-radius: 2px; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #666666; }
.ig-sp__title { margin: 0 0 4px; font-size: 17px; line-height: 1.3; color: #555; }
.ig-sp__card:hover .ig-sp__title { color: #9b2121; }
.ig-sp__card time { font-size: 12px; color: #666666; }
.ig-pol { background: #f1f1f1; border-radius: 4px; padding: 20px 22px; }
.ig-pol h3 { margin: 0 0 10px; font-size: 18px; }
.ig-pol ul { list-style: none; margin: 0; padding: 0; }
.ig-pol li { margin: 0; list-style: none; }
.ig-pol li a { display: block; padding: 6px 0; border-bottom: 1px solid #dcdcdc; font-size: 14px; color: #555; }
.ig-pol li a:hover { color: #9b2121; }

@media (prefers-reduced-motion: reduce) { .ig-mosaic *, .ig-hub *, .ig-hub__img::before, .ig-sp__card img { transition: none !important; } }
@media (max-width: 1100px) { .ig-dz__list { columns: 2; } }
@media (max-width: 900px) {
    .ig-mosaic { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
    .ig-mosaic__item { min-height: 230px; }
    .ig-mosaic__item.is-big { grid-column: span 2; grid-row: auto; min-height: 380px; }
    .is-big .ig-mosaic__title { font-size: 25px; }
    .is-big .ig-mosaic__body { max-width: 100%; }
    .ig-hub, .ig-dz, .ig-about, .ig-sp__wrap.has-pol { grid-template-columns: 1fr; }
    .ig-hub.is-rev .ig-hub__img { order: 0; }
    .ig-hub { margin-bottom: 54px; }
    .ig-sp__cards { grid-template-columns: 1fr 1fr; }
    .ig-about__mark { max-width: 180px; }
}
@media (max-width: 600px) {
    .ig-home-sec { padding-top: 44px; padding-bottom: 44px; }
    .ig-mosaic { grid-template-columns: 1fr; }
    .ig-mosaic__item.is-big { grid-column: auto; min-height: 460px; }
    .ig-mosaic__item { min-height: 210px; }
    .ig-mosaic__title { font-size: 18px; }
    .is-big .ig-mosaic__title { font-size: 22px; }
    .ig-mosaic__lead { font-size: 15px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
    .is-big .ig-mosaic__body { padding: 20px 20px 22px; }
    .ig-mosaic__cta { display: none; }
    .ig-sp__cards { grid-template-columns: 1fr; }
    .ig-hub__img::before { transform: translate(8px, 8px) !important; }
}

/* ===== Strona wpisu (single.php + inc/ig-single.php) ===== */
.ig-progress { position: fixed; top: var(--ig-hdr, 0px); left: 0; right: 0; height: 4px; z-index: 100001; pointer-events: none; } /* pod przyklejonym menu */
.ig-progress span { display: block; width: 0; height: 100%; background: #9b2121; transition: width .1s linear; }
.ig-single { padding: 0 var(--ig-gutter); }
.ig-post-head, .ig-single__grid, .ig-related { max-width: 1196px; margin-left: auto; margin-right: auto; }
.ig-post-head { padding: 28px 0 22px; }
.ig-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; margin: 0 0 14px; font-size: 13px; color: #666666; }
.ig-crumbs a { color: #9b2121; }
.ig-crumbs a:hover { color: #555; }
.ig-crumbs .ig-ico { width: 16px; height: 16px; fill: #9b2121; display: block; }
.ig-post-title { margin: 0 0 22px; font-size: clamp(30px, 3.6vw, 46px); line-height: 1.15; }
.ig-meta { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 14px 30px; }
.ig-meta__author { display: flex; align-items: center; gap: 12px; }
.ig-meta__name { display: block; font-weight: 700; color: #555; }
a.ig-meta__name:hover { color: #9b2121; }
.ig-meta__role { display: block; font-size: 13px; line-height: 1.3; color: #666666; }
.ig-meta__facts { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; align-items: flex-end; gap: 4px; font-size: 14px; color: #666666; }
.ig-meta__facts li { margin: 0; display: flex; align-items: center; gap: 7px; list-style: none; }
.ig-meta__facts .ig-ico, .ig-kt .ig-ico { fill: none; stroke: #9b2121; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; width: 17px; height: 17px; flex: none; }
.ig-av { display: grid; place-items: center; flex: none; border-radius: 50%; background: #f1f1f1; border: 1px solid #e3e3e3; overflow: hidden; }
.ig-av img { width: 78%; height: auto; }
.ig-single__grid { display: grid; grid-template-columns: minmax(0, 820px) 320px; gap: 56px; justify-content: space-between; align-items: start; }
.ig-single__main { min-width: 0; }
.ig-hero { margin: 0 0 26px; }
.ig-hero img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 4px; }
/* najwazniejsze informacje - tytul jako etykieta na gornej krawedzi */
.ig-kt { position: relative; margin: 18px 0 32px; padding: 40px 26px 22px; background: #f1f1f1; border: 1px solid #dcdcdc; border-radius: 6px; }
.ig-kt__h { position: absolute; top: -15px; left: 22px; right: auto; width: max-content; max-width: calc(100% - 44px); margin: 0; padding: 5px 14px; background: #9b2121; color: #f1f1f1; font-size: 15px; line-height: 1.3; border-radius: 3px; }
.ig-kt ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.ig-kt li { margin: 0; display: flex; gap: 10px; align-items: flex-start; font-size: 16px; line-height: 1.5; list-style: none; }
.ig-kt .ig-ico { width: 20px; height: 20px; margin-top: 2px; stroke-width: 2.6; }
/* tresc */
.ig-entry { font-size: 17px; line-height: 1.75; }
.ig-entry h2 { position: relative; margin: 1.8em 0 .5em; font-size: 28px; line-height: 1.25; scroll-margin-top: calc(var(--ig-hdr, 78px) + 24px); }
.ig-entry h3 { scroll-margin-top: calc(var(--ig-hdr, 78px) + 24px); }
.ig-entry a { text-decoration: underline; text-underline-offset: 3px; }
.ig-hd-anchor { margin-left: 10px; color: #ccc !important; text-decoration: none !important; font-weight: 400; opacity: 0; transition: opacity .2s; }
h2:hover > .ig-hd-anchor, .ig-hd-anchor:focus { opacity: 1; }
.ig-hd-anchor:hover { color: #9b2121 !important; }
.ig-hd-anchor::after { content: "#"; } /* znak tylko w CSS, nie w tekście nagłówka (SEO) */
/* FAQ */
.ig-faq { margin: 44px 0 34px; scroll-margin-top: calc(var(--ig-hdr, 78px) + 24px); }
.ig-faq h2 { margin: 0 0 14px; font-size: 28px; }
.ig-faq details { margin: 0 0 10px; border: 1px solid #e5e5e5; border-radius: 4px; background: #fff; transition: border-color .2s; }
.ig-faq details[open] { border-color: #9b2121; }
.ig-faq summary { position: relative; cursor: pointer; list-style: none; padding: 15px 54px 15px 18px; font-weight: 700; font-size: 17px; color: #555; }
.ig-faq summary::-webkit-details-marker { display: none; }
.ig-faq summary::after {
    content: ""; position: absolute; right: 18px; top: 50%; width: 24px; height: 24px; margin-top: -12px; border-radius: 50%;
    background: #f1f1f1 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%239b2121' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") center / 16px no-repeat;
    transition: transform .3s;
}
.ig-faq details[open] summary { color: #9b2121; }
.ig-faq details[open] summary::after { transform: rotate(180deg); }
.ig-faq__a { padding: 0 18px 4px; }
.ig-faq__a p { margin: 0 0 14px; }
/* ramka autora */
.ig-abox { display: flex; align-items: center; gap: 24px; margin: 10px 0 56px; padding: 26px 28px; background: #f1f1f1; border-radius: 6px; }
.ig-abox__by { margin: 0; font-size: 14px; color: #666666; }
.ig-abox__name { margin: 0 0 8px; font-size: 22px; }
.ig-abox__txt p { margin: 0 0 10px; font-size: 16px; }
.ig-abox__links { display: flex; flex-wrap: wrap; gap: 6px 20px; margin: 0 !important; }
.ig-abox__links a { color: #9b2121; font-weight: 700; font-size: 15px; text-decoration: underline; text-underline-offset: 3px; }
/* panel boczny */
.ig-single__side { align-self: stretch; }
.ig-side-sticky { position: sticky; top: calc(var(--ig-hdr, 78px) + 28px); transition: top .2s; }
.ig-toc__h { margin: 0 0 14px; font-size: 16px; color: #555; }
.ig-toc__body { position: relative; padding-left: 24px; }
.ig-toc__rail { position: absolute; left: 4px; top: 12px; bottom: 12px; width: 2px; background: #e3e3e3; }
.ig-toc__rail span { display: block; width: 100%; height: 0; background: #9b2121; transition: height .25s; }
.ig-toc ol { list-style: none; margin: 0; padding: 0; }
.ig-toc li { position: relative; margin: 0; list-style: none; }
.ig-toc a { position: relative; display: block; padding: 6px 0 6px 6px; font-size: 14px; line-height: 1.4; color: #555; }
.ig-toc a::before { content: ""; position: absolute; left: -25px; top: 12px; width: 10px; height: 10px; border-radius: 50%; background: #fff; border: 2px solid #ccc; transition: background .25s, border-color .25s; }
.ig-toc a:hover { color: #9b2121; }
.ig-toc a.is-active { color: #9b2121; font-weight: 700; }
.ig-toc a.is-active::before, .ig-toc a.is-done::before { background: #9b2121; border-color: #9b2121; }
.ig-gsrc {
    display: flex; align-items: center; gap: 14px; margin-top: 24px; padding: 14px 16px; border: 1px solid #e5e5e5; border-radius: 10px; background: #fff;
    color: #555; font-size: 14px; line-height: 1.35; transition: border-color .2s, box-shadow .2s;
}
.ig-gsrc:hover { color: #555; border-color: #9b2121; box-shadow: 0 6px 20px rgba(0, 0, 0, .06); }
.ig-gsrc__g { width: 28px; height: 28px; flex: none; }
.ig-gsrc span { flex: 1; }
.ig-gsrc b { color: #9b2121; transition: transform .25s; }
.ig-gsrc:hover b { transform: translateX(4px); }
/* powiazane wpisy */
.ig-related { padding: 46px 0 60px; border-top: 1px solid #e5e5e5; }
.ig-related h2 { margin: 0 0 22px; font-size: 28px; }
.ig-related__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }
.ig-related__card { margin: 0; }
.ig-related__card a { display: block; color: #555; }
.ig-related__img { display: block; aspect-ratio: 3 / 2; overflow: hidden; border-radius: 4px; margin-bottom: 12px; background: #f1f1f1; }
.ig-related__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2, .7, .2, 1); }
.ig-related__card:hover img { transform: scale(1.05); }
.ig-related__card h3 { margin: 0 0 4px; font-size: 18px; line-height: 1.3; color: #555; }
.ig-related__card:hover h3 { color: #9b2121; }
.ig-related__card time { font-size: 13px; color: #666666; }
@media (max-width: 1100px) { .ig-single__grid { grid-template-columns: minmax(0, 1fr) 280px; gap: 36px; } }
@media (max-width: 900px) {
    .ig-single__grid { grid-template-columns: 1fr; }
    .ig-single__side { order: -1; }
    .ig-side-sticky { position: static; }
    .ig-toc { padding: 16px 18px; border: 1px solid #e5e5e5; border-radius: 6px; }
    .ig-gsrc { margin: 16px 0 24px; }
    .ig-meta__facts { align-items: flex-start; }
    .ig-related__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) { .ig-related__grid { grid-template-columns: 1fr; } .ig-abox { flex-direction: column; align-items: flex-start; } }

/* ===== Strony hubow [ig_hub] (inc/ig-hub.php) ===== */
.ig-hubpage { padding: 0 var(--ig-gutter) 30px; } /* pelna szerokosc jak strona glowna */
.ig-hi { width: 20px; height: 20px; flex: none; fill: none; stroke: #9b2121; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ig-hub-hero { display: grid; grid-template-columns: 1.1fr .9fr; gap: 44px; align-items: center; padding: 34px 0 30px; }
.ig-hub-hero__h1 { margin: 0 0 14px; font-size: clamp(32px, 3.4vw, 46px); line-height: 1.12; }
.ig-hub-hero__lead { margin: 0 0 14px; font-size: 18px; line-height: 1.65; }
.ig-hub-hero__upd { display: flex; align-items: center; gap: 7px; margin: 0; font-size: 14px; color: #666666; }
.ig-hub-hero__upd .ig-ico { width: 16px; height: 16px; fill: none; stroke: #9b2121; stroke-width: 1.8; }
.ig-hub-hero__img { margin: 0; }
.ig-hub-hero__img img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; max-height: 440px; object-fit: cover; border-radius: 6px; }
/* nawigacja na stronie: wysrodkowany rzad linkow z ikonami (kotwice, bez nowych URL-i) */
.ig-hub-nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 34px; margin: 6px 0 50px; padding: 0 0 22px; border-bottom: 1px solid #e5e5e5; }
.ig-hub-nav a { position: relative; display: inline-flex; align-items: center; gap: 8px; padding: 6px 0; color: #555; font-weight: 700; font-size: 15px; white-space: nowrap; }
.ig-hub-nav a::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: #9b2121; transform: scaleX(0); transform-origin: left; transition: transform .3s; }
.ig-hub-nav a:hover { color: #9b2121; }
.ig-hub-nav a:hover::after { transform: scaleX(1); }
.ig-hub-sec { margin: 0 0 60px; scroll-margin-top: calc(var(--ig-hdr, 60px) + 20px); }
.ig-hub-h2 { margin: 0 0 20px; font-size: clamp(24px, 2.3vw, 32px); line-height: 1.2; }
/* karta */
.ig-hc { margin: 0; }
.ig-hc a { display: block; color: #555; }
.ig-hc__img { display: block; aspect-ratio: 3 / 2; overflow: hidden; border-radius: 4px; margin: 0 0 10px; background: #f1f1f1; }
.ig-hc__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2, .7, .2, 1); }
.ig-hc:hover img { transform: scale(1.05); }
.ig-hc__m { display: block; margin: 0 0 4px; font-size: 13px; color: #666666; }
.ig-hc__t { margin: 0; font-size: 18px; line-height: 1.3; color: #555; }
.ig-hc:hover .ig-hc__t { color: #9b2121; }
.ig-hc__ex { margin: 8px 0 0; font-size: 15px; color: #666666; }
.ig-hc.is-big .ig-hc__img { aspect-ratio: 16 / 10; }
.ig-hc.is-big .ig-hc__t { font-size: 26px; line-height: 1.22; }
.ig-sp-tag { display: inline-block; margin: 0 0 5px; padding: 1px 6px; border: 1px solid #ccc; border-radius: 2px; font-size: 10px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #666666; }
/* najnowsze */
.ig-hub-latest { display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 28px; }
.ig-hub-latest__mid { display: grid; gap: 22px; align-content: start; }
.ig-hub-latest__side { list-style: none; margin: 0; padding: 0; }
.ig-hub-latest__side li { margin: 0; border-bottom: 1px solid #eee; list-style: none; }
.ig-hub-latest__side li:first-child { border-top: 1px solid #eee; }
.ig-hub-latest__side a { display: flex; gap: 12px; align-items: flex-start; padding: 13px 0; color: #555; }
.ig-hub-latest__side .ig-hi { margin-top: 2px; }
.ig-hub-latest__side strong { display: block; font-size: 15px; line-height: 1.35; margin: 0 0 3px; }
.ig-hub-latest__side a:hover strong { color: #9b2121; }
/* tematy */
.ig-hub-topic { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.3fr); gap: 16px 48px; align-items: start; margin: 0 0 24px; padding: 0 0 20px; border-bottom: 1px solid #e5e5e5; }
.ig-hub-topic .ig-hub-h2 { margin: 0; }
.ig-hub-topic p { margin: 0; font-size: 16px; line-height: 1.7; color: #555; }
.ig-hub-topic strong { color: #555; }
.ig-hub-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px 26px; }
.ig-hub-more { margin-top: 26px; }
.ig-hub-more > summary { list-style: none; cursor: pointer; display: inline-block; padding: 11px 22px; border: 2px solid #9b2121; border-radius: 3px; color: #9b2121; font-weight: 700; font-size: 15px; transition: background .2s, color .2s; }
.ig-hub-more > summary::-webkit-details-marker { display: none; }
.ig-hub-more > summary:hover { background: #9b2121; color: #f1f1f1; }
.ig-hub-more .c, .ig-hub-more[open] .o { display: none; }
.ig-hub-more[open] .c { display: inline; }
.ig-hub-more[open] > summary { margin-bottom: 26px; }
.ig-hub-more[open] { display: flex; flex-direction: column-reverse; align-items: flex-start; }
.ig-hub-more[open] > .ig-hub-grid { width: 100%; margin-bottom: 26px; }
/* poradniki: jedna kolumna, kwadratowe miniatury */
.ig-hub-guides { list-style: none; margin: 0; padding: 0; max-width: 860px; }
.ig-hub-guides li { margin: 0; border-bottom: 1px solid #eee; list-style: none; }
.ig-hub-guides a { display: flex; align-items: center; gap: 16px; padding: 12px 0; color: #555; }
.ig-hub-guides__img { flex: none; width: 64px; height: 64px; border-radius: 4px; overflow: hidden; background: #f1f1f1; }
.ig-hub-guides__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
.ig-hub-guides a:hover img { transform: scale(1.08); }
.ig-hub-guides strong { display: block; font-size: 16px; line-height: 1.35; margin: 0 0 2px; }
.ig-hub-guides a:hover strong { color: #9b2121; }
/* inne tematy: rzad ikon */
.ig-hub-others__list { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); border-top: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5; }
.ig-hub-others__list a { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 24px 10px; text-align: center; color: #555; font-weight: 700; font-size: 14px; line-height: 1.3; border-right: 1px solid #e5e5e5; transition: color .2s, background .2s; }
.ig-hub-others__list a:last-child { border-right: 0; }
.ig-hub-others__ico { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: #f1f1f1; transition: background .25s; }
.ig-hub-others__ico .ig-hi { width: 26px; height: 26px; }
.ig-hub-others__list a:hover { color: #9b2121; }
.ig-hub-others__list a:hover .ig-hub-others__ico { background: #9b2121; }
.ig-hub-others__list a:hover .ig-hi { stroke: #f1f1f1; }
@media (max-width: 1000px) { .ig-hub-latest { grid-template-columns: 1fr 1fr; } .ig-hub-latest__lead { grid-column: span 2; } }
@media (max-width: 900px) {
    .ig-hub-hero, .ig-hub-topic { grid-template-columns: 1fr; }
    .ig-hub-hero__img { order: -1; }
    .ig-hub-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
    .ig-hub-latest, .ig-hub-grid { grid-template-columns: 1fr; }
    .ig-hub-latest__lead { grid-column: auto; }
}

/* huby: duzy wpis = wysokosc kolumny z 2 kartami (zdjecie wypelnia wolne miejsce) */
@media (min-width: 1001px) {
.ig-hub-latest { align-items: stretch; }
.ig-hub-latest__lead, .ig-hub-latest__lead .ig-hc, .ig-hub-latest__lead .ig-hc > a { display: flex; flex-direction: column; height: 100%; }
.ig-hub-latest__lead .ig-hc__img { flex: 1 1 auto; aspect-ratio: auto; min-height: 320px; position: relative; }
.ig-hub-latest__lead .ig-hc__img img { position: absolute; inset: 0; }
}
/* huby: data w kwadracie + "Czytaj wiecej" po najechaniu */
.ig-hc__img { position: relative; }
.ig-hd { position: absolute; top: 10px; left: 10px; z-index: 2; width: 50px; padding: 5px 0 4px; display: flex; flex-direction: column; align-items: center; background: #9b2121; color: #f1f1f1; border-radius: 3px; line-height: 1; box-shadow: 0 3px 10px rgba(0, 0, 0, .2); }
.ig-hd .d { font-size: 19px; font-weight: 700; }
.ig-hd .mo { margin-top: 2px; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ig-hd .y { margin-top: 2px; font-size: 9px; opacity: .8; }
.ig-hc.is-big .ig-hd { width: 58px; top: 14px; left: 14px; }
.ig-hc.is-big .ig-hd .d { font-size: 23px; }
.ig-hd.is-small { position: static; flex: none; width: 44px; box-shadow: none; }
.ig-hd.is-small .d { font-size: 16px; }
.ig-hc__cta { position: absolute; right: 10px; bottom: 10px; z-index: 2; padding: 7px 12px; border-radius: 3px; background: #9b2121; color: #f1f1f1; font-size: 13px; font-weight: 700; opacity: 0; transform: translateY(6px); transition: opacity .3s, transform .35s; }
.ig-hc__cta span { display: inline-block; margin-left: 3px; transition: transform .3s; }
.ig-hc:hover .ig-hc__cta, .ig-hc a:focus-visible .ig-hc__cta { opacity: 1; transform: none; }
.ig-hc:hover .ig-hc__cta span { transform: translateX(3px); }
@media (hover: none) { .ig-hc__cta { display: none; } }
.ig-hub-latest__side a { align-items: center; }
.ig-hub-guides { max-width: none; columns: 2; column-gap: 44px; }
.ig-hub-guides li { break-inside: avoid; }
@media (max-width: 900px) { .ig-hub-guides { columns: 1; } }
/* ===== Sloty reklamowe (wtyczka IG Reklamy) ===== */
.ig-ad { position: relative; margin: 0 auto 56px; text-align: center; }
.ig-ad__lbl { display: block; margin: 0 0 6px; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: #6b6b6b; }
.ig-ad__banner { display: inline-block; max-width: 100%; }
.ig-ad__banner img { display: block; max-width: 100%; height: auto; }
.ig-ad--hub_top { max-width: 970px; }
.ig-ad--hub_bottom { max-width: 728px; margin-bottom: 50px; }
.ig-ad--hub_side { margin: 22px 0 0; }
.ig-ad__ph { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 24px; border: 1px dashed #c9c9c9; border-radius: 6px; background: #f1f1f1; color: #555; transition: border-color .25s, background .25s; }
.ig-ad__ph:hover { border-color: #9b2121; background: #fff; color: #555; }
.ig-ad__ph-t { font-size: 20px; font-weight: 700; color: #9b2121; }
.ig-ad__ph-s { font-size: 14px; color: #666666; }
.ig-ad__ph-b { margin-top: 4px; font-size: 14px; font-weight: 700; color: #9b2121; }
.ig-ad--hub_top .ig-ad__ph { min-height: 250px; }
.ig-ad--hub_side .ig-ad__ph { min-height: 250px; } /* pelna szerokosc kolumny */
.ig-ad--hub_side .ig-ad__banner, .ig-ad--hub_side .ig-ad__banner img { width: 100%; }
.ig-ad--hub_side .ig-ad__ph-t { font-size: 18px; }
.ig-ad--hub_bottom .ig-ad__ph { flex-direction: row; flex-wrap: wrap; gap: 6px 16px; min-height: 90px; padding: 16px 24px; }
.ig-ad--hub_bottom .ig-ad__ph-t { font-size: 16px; }
.ig-ad--hub_bottom .ig-ad__ph-b { margin: 0; }
@media (max-width: 600px) { .ig-ad--hub_top .ig-ad__ph { min-height: 250px; max-width: 300px; margin: 0 auto; } .ig-ad__ph-t { font-size: 18px; } }
/* ===== Strona Kontakt [ig_contact_page] (wtyczka IG Kontakt) ===== */
.ig-ct-i { width: 22px; height: 22px; flex: none; fill: none; stroke: #9b2121; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ig-ct-i .f { fill: currentColor; stroke: none; }
.ig-ct-hero { min-height: 420px; display: flex; align-items: center; padding: 40px var(--ig-gutter) 150px; background: #555 center 60% / cover no-repeat; color: #f1f1f1; }
.ig-ct-hero__in { max-width: 720px; }
.ig-ct-hero .ig-crumbs, .ig-ct-hero .ig-crumbs a { color: #f1f1f1; }
.ig-ct-hero h1 { margin: 0 0 12px; color: #fff; font-size: clamp(34px, 3.6vw, 50px); line-height: 1.1; }
.ig-ct-hero p { margin: 0; font-size: 18px; line-height: 1.6; color: #f1f1f1; }
.ig-ct-card { position: relative; display: grid; grid-template-columns: .9fr 1.1fr; margin: -110px var(--ig-gutter) 70px; border-radius: 10px; overflow: hidden; box-shadow: 0 20px 60px rgba(0, 0, 0, .15); scroll-margin-top: calc(var(--ig-hdr, 60px) + 20px); }
.ig-ct-side { background: #9b2121; color: #f1f1f1; padding: 40px; }
.ig-ct-side__h { margin: 0 0 10px; color: #fff; font-size: 22px; }
.ig-ct-side .ig-ct-i { stroke: #f1f1f1; }
.ig-ct-link { display: flex; align-items: center; gap: 14px; padding: 15px 0; border-bottom: 1px solid rgba(241, 241, 241, .25); color: #fff; font-size: 19px; font-weight: 700; }
.ig-ct-link:hover { color: #fff; opacity: .85; }
.ig-ct-link small { display: block; font-size: 12px; font-weight: 400; letter-spacing: .04em; color: rgba(241, 241, 241, .75); }
.ig-ct-link .ig-ct-i { width: 26px; height: 26px; }
.ig-ct-meta { display: flex; align-items: center; gap: 8px; margin: 16px 0 0; font-size: 14px; color: rgba(241, 241, 241, .92); }
.ig-ct-lbl { margin: 24px 0 8px; font-size: 14px; font-weight: 700; color: #fff; }
.ig-ct-soc { display: flex; gap: 10px; }
.ig-ct-soc a { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; border: 1.5px solid rgba(241, 241, 241, .5); color: #fff; transition: background .2s; }
.ig-ct-soc a:hover { background: #fff; }
.ig-ct-soc a:hover .ig-ct-i { stroke: #9b2121; color: #9b2121; }
.ig-ct-about { display: flex; align-items: center; gap: 14px; margin-top: 28px; padding: 16px 18px; border: 1px solid rgba(241, 241, 241, .4); border-radius: 6px; color: #f1f1f1; transition: background .2s; }
.ig-ct-about:hover { background: rgba(255, 255, 255, .08); color: #f1f1f1; }
.ig-ct-about b { display: block; color: #fff; }
.ig-ct-about small { color: rgba(241, 241, 241, .8); }
.ig-ct-about i { margin-left: auto; font-style: normal; font-weight: 700; }
.ig-ct-formwrap { background: #fff; padding: 40px; }
.ig-ct-formwrap h2 { margin: 0 0 20px; font-size: 26px; }
.ig-ct-note { margin: 0 0 18px; padding: 14px 16px; border-radius: 4px; font-weight: 700; }
.ig-ct-note.is-ok { background: #eef6ee; color: #2f6b2f; }
.ig-ct-note.is-err { background: #fbeeee; color: #9b2121; }
.ig-ct-form { display: grid; gap: 16px; }
.ig-ct-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.ig-ct-form label { display: grid; gap: 6px; margin: 0; font-size: 14px; font-weight: 700; color: #555; }
.ig-ct-form em { font-weight: 400; font-style: normal; color: #6b6b6b; }
.ig-ct-form input[type=text], .ig-ct-form input[type=email], .ig-ct-form input[type=tel], .ig-ct-form select, .ig-ct-form textarea {
    width: 100%; height: auto; margin: 0; padding: 12px 14px; border: 1px solid #d6d6d6; border-radius: 4px; background: #fff; box-shadow: none;
    font: 400 16px Lato, sans-serif; color: #555; transition: border-color .2s, box-shadow .2s;
}
.ig-ct-form input:focus, .ig-ct-form select:focus, .ig-ct-form textarea:focus { outline: 0; border-color: #9b2121; box-shadow: 0 0 0 3px rgba(155, 33, 33, .12); }
.ig-ct-check { grid-template-columns: auto 1fr !important; align-items: start; font-weight: 400 !important; color: #666666 !important; }
.ig-ct-check input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: #9b2121; }
.ig-ct-check a { color: #9b2121; text-decoration: underline; }
.ig-ct-submit { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
.ig-ct-submit button { margin: 0; padding: 14px 28px; border: 0; border-radius: 4px; background: #9b2121; color: #f1f1f1; font: 700 16px Lato, sans-serif; text-transform: none; letter-spacing: 0; cursor: pointer; transition: background .2s; }
.ig-ct-submit button:hover { background: #555; }
.ig-ct-submit button:disabled { opacity: .7; cursor: wait; }
.ig-ct-rc { display: flex; gap: 6px; align-items: flex-start; flex: 1; min-width: 240px; margin: 0; font-size: 12px; line-height: 1.5; color: #6b6b6b; }
.ig-ct-rc .ig-ct-i { width: 16px; height: 16px; stroke: #6b6b6b; }
.ig-ct-rc a { color: #6b6b6b; text-decoration: underline; }
.ig-ct-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.grecaptcha-badge { visibility: hidden !important; } /* dozwolone przy widocznej adnotacji w formularzu */
@media (max-width: 900px) {
    .ig-ct-card { grid-template-columns: 1fr; margin-top: -80px; }
    .ig-ct-formwrap { order: -1; }
    .ig-ct-row { grid-template-columns: 1fr; }
    .ig-ct-side, .ig-ct-formwrap { padding: 28px 22px; }
}

/* ===== Strona O nas [ig_about_page] (inc/ig-about.php) ===== */
.ig-ab .ig-ab-i, .ig-ab .ig-hi { width: 24px; height: 24px; flex: none; fill: none; stroke: #9b2121; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ig-ab .ig-ab-i .f { fill: currentColor; stroke: none; }
.ig-ab ul, .ig-ab ol { list-style: none; margin: 0; padding: 0; }
.ig-ab li { margin: 0; }
.ig-ab h2 { margin: 0 0 22px; font-size: clamp(24px, 2.2vw, 30px); line-height: 1.2; }
.ig-ab h3 { margin: 0 0 6px; color: #555; font-size: 20px; }
.ig-ab-sec { padding: 56px var(--ig-gutter); }
.ig-ab-sec + .ig-ab-sec { border-top: 1px solid #eee; }
.ig-ab-txt p { margin: 0 0 16px; max-width: 760px; }
.ig-ab-txt a:not(.ig-btn) { color: #9b2121; }
.ig-ab-more { font-weight: 700; color: #9b2121; }
.ig-ab-more:hover { color: #555; }
/* zdjecie z misja */
.ig-ab-hero { position: relative; display: flex; align-items: flex-end; min-height: 440px; padding: 40px var(--ig-gutter) 56px; color: #f1f1f1; isolation: isolate; overflow: hidden; }
.ig-ab-hero__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 62%; z-index: -2; }
.ig-ab-hero .ig-ab-credit { position: absolute; right: var(--ig-gutter); bottom: 10px; margin: 0; font-size: 11px; line-height: 1.4; color: rgba(241, 241, 241, .75); }
.ig-ab-hero .ig-ab-credit a { color: inherit; text-decoration: underline; }
.ig-ab-photo figcaption a { color: inherit; text-decoration: underline; }
.ig-ab-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(40, 40, 40, .85), rgba(40, 40, 40, .2)); }
.ig-ab-hero__in { max-width: 720px; }
.ig-ab-hero .ig-crumbs, .ig-ab-hero .ig-crumbs a { color: #f1f1f1; }
.ig-ab-hero h1 { margin: 0 0 12px; color: #fff; font-size: clamp(36px, 4vw, 56px); line-height: 1.1; }
.ig-ab-hero p { margin: 0; font-size: 21px; line-height: 1.55; color: #f1f1f1; }
/* kim jestesmy */
.ig-ab-intro { display: grid; grid-template-columns: 1.15fr .85fr; gap: 56px; align-items: center; }
.ig-ab-photo { margin: 0; }
.ig-ab-photo img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 10px; }
.ig-ab-photo figcaption { margin-top: 8px; font-size: 13px; color: #6b6b6b; }
/* dla kogo piszemy */
.ig-ab-aud { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.ig-ab-aud article { padding: 28px; border: 1px solid #e5e5e5; border-radius: 10px; }
.ig-ab-aud .ig-ab-i { width: 36px; height: 36px; margin-bottom: 14px; }
.ig-ab-aud p { margin: 0 0 14px; color: #666666; }
.ig-ab-aud li { border-top: 1px solid #eee; }
.ig-ab-aud li a { display: block; padding: 10px 0; font-weight: 700; color: #9b2121; }
.ig-ab-aud li a:hover { color: #555; }
/* jak powstaja teksty - os z ikonami */
.ig-ab-steps { position: relative; display: grid; grid-template-columns: repeat(5, 1fr); gap: 24px; }
.ig-ab-steps::before { content: ""; position: absolute; top: 32px; left: 32px; right: 10%; height: 2px; background: #e5e5e5; }
.ig-ab-steps li { position: relative; display: grid; gap: 6px; align-content: start; }
.ig-ab-steps__ic { position: relative; z-index: 1; display: grid; place-items: center; width: 64px; height: 64px; margin-bottom: 8px; border: 2px solid #9b2121; border-radius: 50%; background: #fff; }
.ig-ab-steps .ig-ab-i { width: 28px; height: 28px; }
.ig-ab-steps b { font-size: 18px; color: #555; }
.ig-ab-steps li > span:last-child { font-size: 15px; color: #666666; }
/* redakcja - male karty */
.ig-ab-team { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.ig-ab-person { display: flex; gap: 14px; align-items: center; padding: 14px 16px; border: 1px solid #e5e5e5; border-radius: 8px; }
.ig-ab-person__ph { display: grid; place-items: center; flex: none; width: 56px; height: 56px; border-radius: 50%; background: #f1f1f1; }
.ig-ab-person__ph .ig-ab-i { stroke: #bbb; }
.ig-ab-person b { display: block; color: #555; }
.ig-ab-person small { display: block; font-size: 14px; color: #9b2121; font-weight: 700; }
.ig-ab-person a { font-size: 14px; color: #666666; }
/* poprawki + wspolpraca */
.ig-ab-two { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: start; }
.ig-ab-corr { display: flex; gap: 22px; align-items: flex-start; margin-top: 20px; padding: 0 30px 30px; border: 1px solid #cfcfcf; background: #fff; }
.ig-ab-corr h2 { display: inline-block; margin: -.62em 0 14px -12px; padding: 0 12px; background: #fff; line-height: 1.25; }
.ig-ab-corr > .ig-ab-i { margin-top: 34px; }
.ig-ab-corr > .ig-ab-i { width: 40px; height: 40px; }
.ig-ab-corr p { margin: 0 0 18px; }
/* przewodniki */
.ig-ab-hubs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.ig-ab-hubs a { display: flex; gap: 14px; align-items: flex-start; height: 100%; padding: 20px; border: 1px solid #e5e5e5; border-radius: 8px; font-size: 14px; color: #666666; transition: border-color .2s, transform .2s; }
.ig-ab-hubs a:hover { border-color: #9b2121; transform: translateY(-3px); color: #666666; }
.ig-ab-hubs .ig-ab-i, .ig-ab-hubs .ig-hi { width: 30px; height: 30px; }
.ig-ab-hubs b { display: block; margin-bottom: 2px; font-size: 17px; color: #555; }
.ig-ab-hubs i { margin-left: auto; font-style: normal; font-weight: 700; color: #9b2121; }
.ig-ab-upd { margin: 26px 0 0; font-size: 14px; color: #6b6b6b; }
/* kontakt */
.ig-ab-cta { display: grid; grid-template-columns: 1.4fr 1fr; gap: 40px; align-items: center; padding: 56px var(--ig-gutter); background: #9b2121; color: #f1f1f1; }
.ig-ab-cta h2 { color: #fff; }
.ig-ab-cta p { margin: 0 0 22px; color: rgba(241, 241, 241, .9); }
.ig-ab-cta__btns { display: flex; flex-wrap: wrap; gap: 14px 26px; align-items: center; }
.ig-ab-cta__btns > a:not(.ig-btn) { display: flex; gap: 8px; align-items: center; font-weight: 700; color: #fff; }
.ig-ab-cta__btns > a:not(.ig-btn):hover { color: #f1f1f1; opacity: .85; }
.ig-ab-cta .ig-ab-i { stroke: #fff; color: #fff; }
.ig-ab-soc { display: flex; flex-wrap: wrap; gap: 12px; }
.ig-ab-soc p { flex-basis: 100%; margin: 0; font-weight: 700; color: #fff; }
.ig-ab-soc a { display: flex; gap: 12px; align-items: center; padding: 12px 18px; border: 1.5px solid rgba(241, 241, 241, .45); border-radius: 8px; font-size: 14px; color: #f1f1f1; transition: border-color .2s; }
.ig-ab-soc a:hover { border-color: #fff; color: #f1f1f1; }
.ig-ab-soc b { display: block; font-size: 16px; color: #fff; }
@media (max-width: 1100px) {
    .ig-ab-hubs { grid-template-columns: repeat(2, 1fr); }
    .ig-ab-steps { grid-template-columns: repeat(2, 1fr); }
    .ig-ab-steps::before { display: none; }
}
@media (max-width: 900px) {
    .ig-ab-intro, .ig-ab-two, .ig-ab-cta { grid-template-columns: 1fr; gap: 28px; }
    .ig-ab-aud, .ig-ab-team { grid-template-columns: 1fr; }
    .ig-ab-hero { min-height: 360px; }
    .ig-ab-hero p { font-size: 18px; }
    .ig-ab-hero::after { background: linear-gradient(180deg, rgba(40, 40, 40, .3), rgba(40, 40, 40, .88) 55%); }
}
@media (max-width: 600px) {
    .ig-ab-sec { padding-top: 40px; padding-bottom: 40px; }
    .ig-ab-hubs, .ig-ab-steps { grid-template-columns: 1fr; }
    .ig-ab-corr { padding: 0 20px 22px; }
    .ig-ab-corr > .ig-ab-i { display: none; }
}

/* ===== Strona zbiorcza Dzielnice [ig_dzielnice_page] (inc/ig-dzielnice.php) =====
   Klasa .ig-dz jest zajeta przez sekcje mapy na stronie glownej - tu prefiks .ig-dzp. */
.ig-dzp { --z-polnoc: #9b2121; --z-centrum: #555; --z-taras: #c77d5a; --z-wschod: #7a8f7a; }
.ig-dzp-defs { position: absolute; width: 0; height: 0; overflow: hidden; }
.ig-dzp ul, .ig-dzp ol { list-style: none; margin: 0; padding: 0; }
.ig-dzp li { margin: 0; }
.ig-dzp h2 { margin: 0 0 22px; font-size: clamp(24px, 2.2vw, 30px); line-height: 1.2; }
.ig-dzp h3 { display: flex; align-items: center; margin: 0 0 6px; color: #555; font-size: 18px; }
.ig-dzp-sec { padding: 56px var(--ig-gutter); }
.ig-dzp-sec + .ig-dzp-sec { border-top: 1px solid #eee; }
.ig-dzp-zd { display: inline-block; flex: none; width: 12px; height: 12px; margin-right: 8px; border-radius: 3px; vertical-align: -1px; }
.ig-dzp-zd.z-polnoc { background: var(--z-polnoc); } .ig-dzp-zd.z-centrum { background: var(--z-centrum); }
.ig-dzp-zd.z-taras { background: var(--z-taras); } .ig-dzp-zd.z-wschod { background: var(--z-wschod); }
/* 1. wstep */
.ig-dzp-head { display: grid; grid-template-columns: 1.4fr 1fr; gap: 48px; align-items: end; padding-top: 30px; }
.ig-dzp-head h1 { margin: 0 0 12px; font-size: clamp(32px, 3.4vw, 46px); line-height: 1.12; }
.ig-dzp-lead { margin: 0 0 14px; font-size: 19px; }
.ig-dzp-head p { max-width: 820px; }
/* liczby: czerwone bloki z ostrymi rogami, waskie biale szczeliny, dwa odcienie na przemian (wersja S1) */
.ig-dzp-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; }
.ig-dzp-stats li { display: grid; align-content: end; min-height: 112px; padding: 18px 20px; background: #9b2121; color: #f1f1f1; }
.ig-dzp-stats li:nth-child(2), .ig-dzp-stats li:nth-child(3) { background: #7f1b1b; }
.ig-dzp-stats b { display: block; font-size: 30px; line-height: 1.15; color: #fff; }
.ig-dzp-stats span { font-size: 14px; color: #f1f1f1; }
/* 2. mapa w kolorach stref + lista */
.ig-dzp-mapsec { display: grid; grid-template-columns: 1.3fr 1fr; gap: 48px; align-items: start; }
.ig-dzp-mapsec > * { min-width: 0; }
.ig-dzp-map { position: sticky; top: calc(var(--ig-hdr, 60px) + 20px); }
.ig-dzp-map .igm { max-width: none; margin: 0; }
.ig-dzp-map .igm-d path { stroke: #fff; stroke-width: 1.2; }
.ig-dzp-map .igm-d[data-z=polnoc] path { fill: #e6c4c4; } .ig-dzp-map .igm-d[data-z=centrum] path { fill: #d6d6d6; }
.ig-dzp-map .igm-d[data-z=taras] path { fill: #f0d8cb; } .ig-dzp-map .igm-d[data-z=wschod] path { fill: #d5e0d3; }
.ig-dzp-map .igm-d:hover path, .ig-dzp-map .igm-d:focus path, .ig-dzp-map .igm-d.is-on path { fill: #9b2121; }
.ig-dzp-map .igm-t.is-on { fill: #fff; }
.ig-dzp-zones { display: grid; gap: 22px; }
.ig-dzp-zone p { margin: 0 0 10px; font-size: 15px; color: #666666; }
.ig-dzp-zone ul { columns: 2; column-gap: 20px; }
.ig-dzp-zone li { display: flex; justify-content: space-between; gap: 10px; padding: 6px 8px; border-radius: 4px; break-inside: avoid; font-size: 15px; transition: background .15s; }
.ig-dzp-zone li a { font-weight: 700; color: #555; }
.ig-dzp-zone li span { font-size: 14px; color: #6b6b6b; white-space: nowrap; }
/* liczba mieszkancow przy dzielnicy: ikonka osoby + legenda pod naglowkiem */
.ig-dzp-pi { width: 13px; height: 13px; flex: none; fill: none; stroke: #9b2121; stroke-width: 2.2; stroke-linecap: round; }
.ig-dzp-zone li .ig-dzp-n { display: inline-flex; align-items: center; gap: 5px; color: #666666; font-variant-numeric: tabular-nums; }
.ig-dzp-legend { display: flex; align-items: center; gap: 6px; margin: -12px 0 20px; font-size: 14px; color: #666666; }
.ig-dzp-zone li:hover, .ig-dzp-zone li.is-on { background: #f6eaea; }
.ig-dzp-zone li:hover a, .ig-dzp-zone li.is-on a { color: #9b2121; }
.ig-dzp-src { margin: 16px 0 0; font-size: 12px; color: #6b6b6b; }
/* 3. porownywarka */
.ig-dzp-tools { display: flex; flex-wrap: wrap; gap: 14px 30px; align-items: center; margin-bottom: 14px; }
.ig-dzp-search { display: flex; gap: 8px; align-items: center; margin: 0; padding: 0 14px; border: 1px solid #d6d6d6; border-radius: 4px; }
.ig-dzp-search svg { width: 20px; height: 20px; fill: none; stroke: #9b2121; stroke-width: 1.8; stroke-linecap: round; }
.ig-dzp-search input[type=search] { width: 220px; height: 44px; margin: 0; padding: 0; border: 0; box-shadow: none; background: none; font: 400 15px Lato, sans-serif; }
.ig-dzp-tabs { display: flex; flex-wrap: wrap; gap: 4px 22px; border-bottom: 1px solid #e5e5e5; }
.ig-dzp-tabs button { margin: 0 0 -1px; padding: 10px 0; min-height: 0; border: 0; border-bottom: 3px solid transparent; border-radius: 0; background: none; font: 700 15px Lato, sans-serif; letter-spacing: 0; text-transform: none; color: #666666; cursor: pointer; }
.ig-dzp-tabs button.on { color: #9b2121; border-bottom-color: #9b2121; }
.ig-dzp-tw { overflow-x: auto; border: 1px solid #e5e5e5; border-radius: 8px; }
.ig-dzp-cmp table { width: 100%; margin: 0; border-collapse: collapse; font-size: 15px; }
.ig-dzp-cmp th { padding: 14px 16px; border: 0; background: #f1f1f1; font-size: 14px; font-weight: 700; letter-spacing: 0; text-transform: none; color: #555; text-align: left; white-space: nowrap; cursor: pointer; user-select: none; }
.ig-dzp-cmp th:hover { color: #9b2121; }
/* sortowanie: dwa trojkaty, aktywny kierunek na czerwono */
.ig-dzp-cmp th i { display: inline-flex; flex-direction: column; gap: 2px; margin-left: 8px; vertical-align: middle; }
.ig-dzp-cmp th i::before, .ig-dzp-cmp th i::after { content: ""; border-left: 5px solid transparent; border-right: 5px solid transparent; }
.ig-dzp-cmp th i::before { border-bottom: 6px solid #c9c9c9; }
.ig-dzp-cmp th i::after { border-top: 6px solid #c9c9c9; }
.ig-dzp-cmp th.on:not(.desc) i::before { border-bottom-color: #9b2121; }
.ig-dzp-cmp th.on.desc i::after { border-top-color: #9b2121; }
.ig-dzp-cmp th.on { color: #9b2121; }
.ig-dzp-cmp td { padding: 10px 16px; border: 0; border-top: 1px solid #eee; white-space: nowrap; }
.ig-dzp-cmp td a { font-weight: 700; color: #555; }
.ig-dzp-cmp tbody tr:hover td { background: #fbf6f6; }
.ig-dzp-cmp tbody tr:hover td a { color: #9b2121; }
.ig-dzp-cmp .num { text-align: right; }
.ig-dzp-pop { display: inline-grid; grid-template-columns: 120px 64px; gap: 12px; align-items: center; }
.ig-dzp-bar { display: block; height: 8px; border-radius: 4px; background: #f1e6e6; overflow: hidden; }
.ig-dzp-bar i { display: block; height: 100%; border-radius: 4px; background: #9b2121; }
.ig-dzp-pop b { font-weight: 400; text-align: right; }
/* 4. rekordy */
.ig-dzp-band { background: #f1f1f1; border-top: 0 !important; }
/* rekordy bez kart (wersja R5): liczba po lewej, miniatura mapy po prawej, cienkie linie miedzy rekordami */
.ig-dzp-recs { display: grid; grid-template-columns: 1fr 1fr; gap: 0 48px; }
.ig-dzp-rec { display: grid; grid-template-columns: minmax(0, 1fr) 200px; gap: 20px; align-items: center; padding: 22px 0; border-bottom: 1px solid #d9d9d9; }
.ig-dzp-rec__tx { display: grid; gap: 6px; min-width: 0; }
.ig-dzp-loc { display: block; width: 100%; height: auto; }
.ig-dzp-loc use { fill: #dcd6d6; stroke: #f1f1f1; stroke-width: 1; }
.ig-dzp-loc use.hl { fill: #9b2121; stroke: #9b2121; }
.ig-dzp-rec__t { font-size: 14px; font-weight: 700; color: #666666; }
.ig-dzp-rec__v { font-size: 42px; line-height: 1.1; color: #9b2121; }
.ig-dzp-rec__v small { margin-left: 6px; font-size: 16px; font-weight: 400; color: #666666; }
.ig-dzp-rec__n { display: flex; align-items: center; gap: 6px; font-weight: 700; color: #555; }
.ig-dzp-arr { width: 14px; height: 14px; flex: none; fill: none; stroke: #9b2121; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform .2s; }
.ig-dzp-rec:hover .ig-dzp-arr { transform: translate(2px, -2px); }
.ig-dzp-rec:hover .ig-dzp-rec__n { color: #9b2121; }
/* 5. FAQ */
.ig-dzp-faqsec { max-width: 980px; }
.ig-dzp-faq details { border-bottom: 1px solid #e5e5e5; }
.ig-dzp-faq summary { position: relative; padding: 18px 36px 18px 0; list-style: none; font-size: 17px; font-weight: 700; color: #555; cursor: pointer; }
.ig-dzp-faq summary::-webkit-details-marker { display: none; }
.ig-dzp-faq summary::after { content: "+"; position: absolute; right: 6px; top: 12px; font-size: 26px; font-weight: 400; color: #9b2121; }
.ig-dzp-faq details[open] summary::after { content: "–"; }
.ig-dzp-faq details p { margin: 0 0 18px; }
@media (max-width: 900px) {
    .ig-dzp-head, .ig-dzp-mapsec { grid-template-columns: 1fr; gap: 28px; }
    .ig-dzp-map { position: static; }
    .ig-dzp-pop { grid-template-columns: 70px 56px; }
    .ig-dzp-recs { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .ig-dzp-sec { padding-top: 40px; padding-bottom: 40px; }
    .ig-dzp-zone ul { columns: 1; }
    .ig-dzp-rec { grid-template-columns: minmax(0, 1fr) 120px; }
    .ig-dzp-rec__v { font-size: 34px; }
    .ig-dzp-stats b { font-size: 24px; }
    .ig-dzp-search, .ig-dzp-search input[type=search] { width: 100%; }
}

/* ===== Strona dzielnicy (inc/ig-district.php) - szablon nakladany na tresc z bazy, prefiks .ig-dzs ===== */
.ig-dzs-defs { position: absolute; width: 0; height: 0; overflow: hidden; }
.ig-dzs h2 { display: flex; align-items: center; gap: 10px; margin: 0 0 18px; font-size: clamp(23px, 2vw, 28px); line-height: 1.2; }
.ig-dzs .ig-hi { width: 26px; height: 26px; flex: none; fill: none; stroke: #9b2121; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ig-dzs-sec { padding: 48px var(--ig-gutter); }
/* naglowek ze zdjeciem */
.ig-dzs-hero { position: relative; display: flex; align-items: flex-end; min-height: 460px; padding: 40px var(--ig-gutter) 50px; color: #f1f1f1; isolation: isolate; overflow: hidden; background: #555; }
.ig-dzs-hero__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 55%; z-index: -2; }
.ig-dzs-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(35, 35, 35, .88), rgba(35, 35, 35, .35) 70%, rgba(35, 35, 35, .1)); }
.ig-dzs-hero__in { max-width: 760px; }
.ig-dzs-hero.no-img { min-height: 340px; background: #5d5d5d; } /* dzielnice bez zdjecia (tymczasowo) */
.ig-dzs-hero.no-img::after { background: linear-gradient(90deg, rgba(0, 0, 0, .25), rgba(0, 0, 0, 0)); }
.ig-dzs-hero .ig-crumbs, .ig-dzs-hero .ig-crumbs a { color: #f1f1f1; }
.ig-dzs-hero h1 { margin: 0 0 12px; color: #fff; font-size: clamp(38px, 4.4vw, 60px); line-height: 1.05; }
.ig-dzs-lead p { margin: 0 0 10px; font-size: 18px; line-height: 1.6; color: #f1f1f1; }
.ig-dzs-lead strong { color: #fff; }
.ig-dzs-hero .ig-dzs-credit { position: absolute; right: var(--ig-gutter); bottom: 10px; margin: 0; font-size: 11px; line-height: 1.4; color: rgba(241, 241, 241, .75); }
.ig-dzs-hero .ig-dzs-credit a { color: inherit; text-decoration: underline; }
/* liczby (czerwone bloki jak na /dzielnice/) + mapka */
.ig-dzs-nums__g { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); gap: 4px; }
.ig-dzs-stats { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px; }
.ig-dzs-stats li { display: grid; align-content: end; min-height: 120px; margin: 0; padding: 18px 20px; background: #9b2121; color: #f1f1f1; }
.ig-dzs-stats li:nth-child(even) { background: #7f1b1b; }
.ig-dzs-stats.n5 li:first-child { grid-row: span 2; } /* 5 liczb: mieszkancy na dwa rzedy, bez dziury w siatce */
.ig-dzs-stats.n5 li:first-child b { font-size: 44px; }
.ig-dzs-stats.n4 { grid-template-columns: 1fr 1fr; } /* 4 liczby (brak danych za 2015) - siatka 2x2 */
.ig-dzs-stats.n3 li { min-height: 100%; } /* 3 liczby - jeden wysoki rzad */
.ig-dzs-stats b { display: block; font-size: 30px; line-height: 1.15; color: #fff; }
.ig-dzs-stats span { font-size: 14px; }
.ig-dzs-locbox { display: grid; align-content: center; margin: 0; padding: 18px 22px; background: #f1f1f1; }
.ig-dzs-locbox figcaption { margin-top: 6px; font-size: 13px; color: #666666; text-align: center; }
.ig-dzs-loc { display: block; width: 100%; height: auto; }
.ig-dzs-loc use { fill: #dcd6d6; stroke: #fff; stroke-width: 1; }
.ig-dzs-loc use.nb { fill: #e6bcbc; }
.ig-dzs-loc use.hl { fill: #9b2121; stroke: #9b2121; }
/* wpisy o dzielnicy (karty jak w hubach) */
.ig-dzs-posts { padding-top: 10px; }
.ig-dzs-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.ig-dzs-inline { margin: 26px 0 40px; padding: 0 26px 30px; border: 1px solid #cfcfcf; background: #fff; }
.ig-dzs-inline > .ig-dzs-inline__h { display: inline-block; margin: -.62em 0 16px -12px !important; padding: 0 12px; background: #fff; line-height: 1.25; }
.ig-dzs-inline__h { font-size: 21px !important; }
/* tresc + spis tresci */
.ig-dzs-body { display: grid; grid-template-columns: minmax(0, 1fr) 250px; gap: 56px; align-items: start; padding-top: 20px; }
.ig-dzs-main { max-width: 900px; }
.ig-dzs-s { padding: 34px 0; border-top: 1px solid #eee; scroll-margin-top: calc(var(--ig-hdr, 60px) + 20px); }
.ig-dzs-txt p { margin: 0 0 14px; font-size: 17px; line-height: 1.75; }
.ig-dzs-txt a, .ig-dzs-src a { color: #9b2121; text-decoration: underline; }
.ig-dzs-key { margin: 16px 0 18px; padding: 0 24px 22px; border: 1px solid #cfcfcf; background: #fff; }
.ig-dzs-key__h { display: inline-flex; align-items: center; gap: 8px; margin: -.7em 0 12px -10px; padding: 0 10px; background: #fff; font-size: 19px; font-weight: 900; line-height: 1.3; color: #9b2121; }
.ig-dzs-key ul { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 28px; margin: 0; padding: 0; list-style: none; }
.ig-dzs-key li { margin: 0; font-size: 15px; line-height: 1.5; }
.ig-dzs-key li.wide { grid-column: 1 / -1; }
.ig-dzs-key li span { color: #666666; }
.ig-dzs-key li b { color: #555; }
/* przycisk "Zglos poprawke" - reguła dla linkow w zrodlach nie moze zmieniac jego koloru */
.ig-dzs-src a.ig-btn { color: #f1f1f1; text-decoration: none; }
.ig-dzs-src a.ig-btn:hover { color: #f1f1f1; }
/* wykresy demografii */
.ig-dzs-charts { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 10px; }
.ig-dzs-ch { margin: 0; padding: 20px 22px; border: 1px solid #e5e5e5; }
.ig-dzs-ch figcaption { margin: 0 0 14px; font-weight: 700; color: #555; }
.ig-dzs-row { display: grid; grid-template-columns: 52px minmax(0, 1fr) 64px; gap: 10px; align-items: center; margin: 0 0 10px; font-size: 14px; }
.ig-dzs-row i { position: relative; display: block; height: 14px; background: #f1e6e6; }
.ig-dzs-row i b { display: block; height: 100%; background: #9b2121; }
.ig-dzs-row i b.old { background: #c9a3a3; }
.ig-dzs-row i u, .ig-dzs-lg { position: absolute; top: -4px; bottom: -4px; width: 2px; margin-left: -1px; background: #333; }
.ig-dzs-row em { font-style: normal; font-weight: 700; text-align: right; color: #555; }
.ig-dzs-ch__n { position: relative; margin: 8px 0 0; font-size: 13px; color: #666666; }
.ig-dzs-lg { position: relative; display: inline-block; top: 2px; height: 14px; margin: 0 6px 0 2px; }
/* sasiednie dzielnice */
.ig-dzs-nb__g { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px; align-items: center; }
.ig-dzs-nb ul { list-style: none; margin: 0; padding: 0; }
.ig-dzs-nb li { margin: 0; border-bottom: 1px solid #e5e5e5; }
.ig-dzs-nb li a { display: flex; align-items: baseline; gap: 10px; padding: 11px 4px; color: #555; }
.ig-dzs-nb li a span { margin-left: auto; font-size: 14px; color: #666666; }
.ig-dzs-nb li a:hover b { color: #9b2121; }
.ig-dzs-arr { width: 13px; height: 13px; flex: none; fill: none; stroke: #9b2121; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
/* FAQ */
.ig-dzs-faq details { border-bottom: 1px solid #e5e5e5; }
.ig-dzs-faq summary { position: relative; padding: 16px 36px 16px 0; list-style: none; cursor: pointer; }
.ig-dzs-faq summary::-webkit-details-marker { display: none; }
.ig-dzs-faq summary h3 { margin: 0; font-size: 17px; color: #555; }
.ig-dzs-faq summary::after { content: "+"; position: absolute; right: 6px; top: 10px; font-size: 26px; color: #9b2121; }
.ig-dzs-faq details[open] summary::after { content: "–"; }
.ig-dzs-faq details p { margin: 0 0 16px; }
/* zrodla i zgloszenie poprawki */
.ig-dzs-src p { margin: 0 0 12px; font-size: 15px; color: #666666; }
.ig-dzs-upd { font-size: 14px !important; }
.ig-dzs-fix { display: flex; flex-wrap: wrap; gap: 14px 18px; align-items: center; margin-top: 20px; padding: 18px 22px; background: #f1f1f1; }
.ig-dzs-fix p { flex: 1; min-width: 240px; margin: 0 !important; color: #555 !important; }
/* spis tresci (os jak we wpisie) */
.ig-dzs-toc { position: sticky; top: calc(var(--ig-hdr, 60px) + 24px); padding: 34px 0; }
.ig-dzs-toc__h { margin: 0 0 12px; font-weight: 700; color: #555; }
.ig-dzs-toc ol { list-style: none; margin: 0; padding: 0; border-left: 2px solid #e5e5e5; }
.ig-dzs-toc li { margin: 0; }
.ig-dzs-toc a { display: block; margin-left: -2px; padding: 6px 0 6px 16px; border-left: 2px solid transparent; font-size: 14px; line-height: 1.35; color: #666666; transition: color .2s, border-color .2s; }
.ig-dzs-toc a:hover { color: #9b2121; }
.ig-dzs-toc a.on { border-left-color: #9b2121; color: #9b2121; font-weight: 700; }
@media (max-width: 1100px) { .ig-dzs-body { grid-template-columns: minmax(0, 1fr) 210px; gap: 36px; } .ig-dzs-charts { grid-template-columns: 1fr; } }
@media (max-width: 900px) {
    .ig-dzs-body, .ig-dzs-nums__g, .ig-dzs-nb__g { grid-template-columns: 1fr; }
    .ig-dzs-toc { display: none; }
    .ig-dzs-cards { grid-template-columns: 1fr 1fr; }
    .ig-dzs-hero { min-height: 380px; }
    .ig-dzs-hero::after { background: linear-gradient(180deg, rgba(35, 35, 35, .3), rgba(35, 35, 35, .9) 50%); }
}
@media (max-width: 600px) {
    .ig-dzs-stats { grid-template-columns: 1fr 1fr; }
    .ig-dzs-stats b { font-size: 24px; }
    .ig-dzs-cards, .ig-dzs-key ul { grid-template-columns: 1fr; }
    .ig-dzs-lead p { font-size: 16px; }
    .ig-dzs-inline { padding: 0 16px 20px; }
}

/* ===== Stopka "Panorama Gdanska" (szablon: template-parts/footer/footer.php w motywie potomnym) ===== */
.ig-footer { position: relative; background: #555; color: #f1f1f1; font-size: 15px; line-height: 1.6; }
.ig-footer .ig-skyline { display: block; width: 100%; height: auto; aspect-ratio: 1600 / 156; margin-bottom: -1px; background: #fff; }
.ig-ft-inner {
    display: grid; gap: 40px 48px; align-items: start;
    grid-template-columns: 1.3fr 1.2fr .9fr 1.1fr;
    padding: 48px var(--ig-gutter) 34px;
}
.ig-footer a { color: #f1f1f1; }
.ig-ft-title {
    margin: 0 0 16px; color: #f1f1f1; font-size: 13px; font-weight: 700;
    letter-spacing: .12em; text-transform: uppercase; line-height: 1.4;
}
.ig-ft-title::after { content: ""; display: block; width: 28px; height: 2px; background: #9b2121; margin-top: 10px; }
.ig-footer p { margin: 0 0 12px; }
.ig-ft-list { list-style: none; margin: 0; padding: 0; }
.ig-ft-list li { margin: 0 0 9px; line-height: 1.4; list-style: none; }
.ig-ft-list a, .ig-ft-more { transition: color .2s, padding-left .2s; }
.ig-ft-list a:hover, .ig-ft-more:hover { color: #fff; padding-left: 4px; }
.ig-ft-logo img { display: block; width: 200px; height: auto; margin: 0 0 16px; filter: brightness(0) invert(94.5%); }
.ig-ft-tag { font-size: 14px; max-width: 300px; opacity: .9; }
.ig-ft-mail { font-weight: 700; }
.ig-ft-more { display: inline-block; margin-top: 4px; font-weight: 700; font-size: 14px; border-bottom: 2px solid currentColor; padding-bottom: 1px; }
.ig-ft-bottom {
    display: flex; flex-wrap: wrap; gap: 8px 22px; justify-content: space-between; align-items: center;
    padding: 16px var(--ig-gutter); font-size: 13px;
    border-top: 1px solid rgba(241, 241, 241, .14); color: rgba(241, 241, 241, .75);
}
.ig-ft-bottom nav { display: flex; flex-wrap: wrap; gap: 18px; }
@media (min-width: 601px) { .ig-ft-bottom { padding-right: calc(var(--ig-gutter) + 56px); } } /* miejsce na przycisk "do gory" */
.ig-ft-bottom a { color: rgba(241, 241, 241, .75); }
.ig-ft-bottom a:hover { color: #f1f1f1; text-decoration: underline; }
/* "Ustawienia cookies" (wtyczka IG Consent) - przycisk wygladajacy jak link */
.ig-ft-bottom .ig-ft-cookie {
    margin: 0; padding: 0; min-height: 0; border: 0; background: none; box-shadow: none;
    font: inherit; line-height: inherit; letter-spacing: 0; text-transform: none;
    color: rgba(241, 241, 241, .75); cursor: pointer;
}
.ig-ft-bottom .ig-ft-cookie:hover { color: #f1f1f1; text-decoration: underline; }
/* social: kolka z animacja "fali Motlawy" */
.ig-ft-social { display: flex; gap: 12px; margin-top: 18px; }
.ig-soc {
    position: relative; width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center;
    border: 1.5px solid #f1f1f1; color: #f1f1f1; overflow: hidden; isolation: isolate; transition: border-color .3s;
}
.ig-soc svg { width: 20px; height: 20px; position: relative; z-index: 2; }
.ig-soc .ico { fill: currentColor; }
.ig-soc .ico-s { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ig-soc::before {
    content: ""; position: absolute; left: -50%; width: 200%; height: 140%; top: 105%; z-index: 1;
    background: #9b2121; border-radius: 40%; transition: top .55s cubic-bezier(.3, .7, .3, 1);
}
.ig-soc::after {
    content: ""; position: absolute; left: -50%; width: 200%; height: 14px; top: 112%; z-index: 1;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 14'%3E%3Cpath d='M0 14 V7 Q7.5 0 15 7 T30 7 T45 7 T60 7 V14Z' fill='%239b2121'/%3E%3C/svg%3E") repeat-x;
    background-size: 30px 14px; transition: top .55s cubic-bezier(.3, .7, .3, 1);
}
.ig-soc:hover { border-color: #9b2121; color: #f1f1f1; }
.ig-soc:hover::before { top: -5%; }
.ig-soc:hover::after { top: -15%; animation: ig-wave 1.2s linear infinite; }
@keyframes ig-wave { to { transform: translateX(30px); } }
@media (prefers-reduced-motion: reduce) { .ig-soc::before, .ig-soc::after { animation: none !important; transition: none !important; } }
@media (max-width: 1000px) { .ig-ft-inner { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) {
    .ig-ft-inner { grid-template-columns: 1fr; gap: 32px; }
    .ig-footer .ig-skyline { aspect-ratio: auto; height: 72px; }
    .ig-ft-bottom { justify-content: center; text-align: center; }
}

/* Przyklejone menu (mechanizm z functions.php): bez animacji wjazdu */
.header-wrapper.ig-stuck { position: fixed; top: 0; left: 0; right: 0; z-index: 1001; animation: none !important; box-shadow: 0 2px 12px rgba(0, 0, 0, .1); }
.admin-bar .header-wrapper.ig-stuck { top: 32px; }
@media (max-width: 782px) { .admin-bar .header-wrapper.ig-stuck { top: 46px; } }
.header-wrapper.ig-stuck .hide-for-sticky { display: none !important; }

/* Pasek menu nizszy (Flatsome: 78 px) - dotyczy tez przyklejonego menu */
#header .header-bottom { min-height: 60px; }

/* ===== Menu glowne (pasek pod logo): aktywna pozycja = czerwone podkreslenie zamiast czerwonego tla ===== */
.header-bottom-nav.nav-box > li > a {
    padding: .5em .85em;
    transition: color .2s, box-shadow .2s;
}
.header-bottom-nav.nav-box > li > a:hover,
.header-bottom-nav.nav-box > li.active > a,
.header-bottom-nav.nav-box > li.current-menu-ancestor > a {
    background-color: transparent;
    color: #9b2121;
}
.header-bottom-nav.nav-box > li > a:hover,
.header-bottom-nav.nav-box > li.active > a,
.header-bottom-nav.nav-box > li.current-menu-ancestor > a {
    box-shadow: inset 0 -2px 0 #9b2121;
}

/* ===== Strona "Reklama" (inc/ig-reklama.php, [ig_reklama_page]) ===== */
.ig-rk h3 { color: #555; }
.ig-rk-lead { font-size: 18px; max-width: 760px; margin: 0 0 26px; }
.ig-rk-hero { display: grid; grid-template-columns: 1.15fr 1fr; gap: 56px; align-items: center; }
.ig-rk-hero h1 { margin: 0 0 14px; color: #9b2121; font-size: clamp(32px, 3.4vw, 46px); line-height: 1.12; }
.ig-rk-btns { display: flex; flex-wrap: wrap; gap: 12px 16px; }
.ig-rk-hero__ph { margin: 0; }
.ig-rk-hero__ph img { display: block; width: 100%; height: 360px; object-fit: cover; }
.ig-rk-hero__ph figcaption { margin-top: 6px; font-size: 11px; color: #666666; }
.ig-rk-hero__ph figcaption a { color: inherit; text-decoration: underline; }
.ig-rk-price { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; background: #f1f1f1; scroll-margin-top: calc(var(--ig-hdr, 70px) + 10px); }
.ig-ab-sec.ig-rk-price { border-top: 0; }
.ig-ab-sec.ig-rk-price + .ig-ab-sec { border-top: 0; }
.ig-rk-t { width: 100%; border-collapse: collapse; margin: 0 0 14px; font-size: 16px; background: #fff; }
.ig-rk-t th, .ig-rk-t td { padding: 13px 16px; text-align: left; border: 1px solid #d9d9d9; color: #555; }
.ig-rk-t th { background: #fafafa; font-size: 16px; font-weight: 700; color: #444; text-transform: none; letter-spacing: 0; }
.ig-rk-t td.ig-rk-p { color: #9b2121; font-weight: 700; }
.ig-rk-t th:not(:first-child), .ig-rk-t td:not(:first-child) { text-align: right; }
.ig-rk-p { font-weight: 700; color: #9b2121 !important; white-space: nowrap; }
.ig-rk-note { font-size: 14px; color: #666666; }
/* banery: schemat + przewijana lista */
.ig-rk-ban { scroll-margin-top: calc(var(--ig-hdr, 70px) + 10px); }
.ig-rk-grp { --u: 1px; display: grid; grid-template-columns: 380px 1fr; gap: 64px; align-items: start; padding: 40px 0; border-top: 1px solid #eee; }
.ig-rk-grp__wf { position: sticky; top: calc(var(--ig-hdr, 70px) + 24px); }
.ig-rk-grp__h { margin: 0 0 6px; font-size: 26px; color: #9b2121 !important; }
.ig-rk-grp__d { margin: 0 0 10px; color: #666666; }
.ig-rk-slot { margin: 34px 0 0; padding: 0 22px 18px; border: 1px solid #dcdcdc; transition: border-color .3s; }
.ig-rk-slot:last-of-type { margin-bottom: clamp(120px, 30vh, 280px); }
.ig-rk-slot.is-on { border-color: #9b2121; }
.ig-rk-slot h4 { display: inline-block; margin: -.65em 0 6px -10px; padding: 0 10px; background: #fff; font-size: 20px; line-height: 1.3; color: #555; transition: color .3s; }
.ig-rk-slot.is-on h4 { color: #9b2121; }
.ig-rk-slot p { margin: 0 0 8px; }
.ig-rk-slot__f { font-size: 14px; color: #666666; }
.ig-rk-slot__p { font-size: 24px; font-weight: 900; color: #9b2121; }
.ig-rk-wf { display: flex; flex-direction: column; gap: calc(var(--u) * 7); padding: calc(var(--u) * 10); border: 1px solid #d6d6d6; background: #fff; box-shadow: 0 10px 30px rgba(0, 0, 0, .06); }
.ig-rk-wf span, .ig-rk-wf b, .ig-rk-wf i { display: block; }
.ig-rk-wf .wf-top { height: calc(var(--u) * 6); background: #9b2121; margin: calc(var(--u) * -10) calc(var(--u) * -10) 0; }
.ig-rk-wf .wf-logo { width: 30%; height: calc(var(--u) * 16); margin: 0 auto; background: #c9c9c9; }
.ig-rk-wf .wf-menu { height: calc(var(--u) * 12); background: #eee; margin: 0 calc(var(--u) * -10); }
.ig-rk-wf .wf-fan { position: relative; height: calc(var(--u) * 70); }
.ig-rk-wf .wf-fan b { position: absolute; top: 10%; width: 26%; height: 80%; left: 37%; background: #ddd; border: 2px solid #fff; }
.ig-rk-wf .wf-fan b:nth-child(1) { left: 6%; transform: rotate(-10deg); }
.ig-rk-wf .wf-fan b:nth-child(2) { left: 21%; transform: rotate(-5deg); }
.ig-rk-wf .wf-fan b:nth-child(4) { left: 53%; transform: rotate(5deg); }
.ig-rk-wf .wf-fan b:nth-child(5) { left: 68%; transform: rotate(10deg); }
.ig-rk-wf .wf-fan b:nth-child(3) { z-index: 2; background: #cfcfcf; }
.ig-rk-wf .wf-h2 { width: 50%; height: calc(var(--u) * 8); margin: calc(var(--u) * 4) auto 0; background: #d6d6d6; }
.ig-rk-wf .wf-row { display: flex; gap: calc(var(--u) * 8); }
.ig-rk-wf .wf-row.is-rev { flex-direction: row-reverse; }
.ig-rk-wf .wf-img { flex: 0 0 40%; height: calc(var(--u) * 34); background: #ddd; box-shadow: inset 0 0 0 2px #e9c9c9; }
.ig-rk-wf .wf-txt { flex: 1; display: flex; flex-direction: column; gap: calc(var(--u) * 5); justify-content: center; }
.ig-rk-wf .wf-txt i { height: calc(var(--u) * 5); background: #e6e6e6; }
.ig-rk-wf .wf-txt i:last-child { width: 70%; }
.ig-rk-wf .wf-split { display: flex; gap: calc(var(--u) * 8); align-items: flex-start; }
.ig-rk-wf .wf-map { flex: 0 0 48%; height: calc(var(--u) * 60); background: #e3e3e3; }
.ig-rk-wf .wf-about { padding: calc(var(--u) * 6) 0; }
.ig-rk-wf .wf-red { height: calc(var(--u) * 30); background: #c98a8a; margin: 0 calc(var(--u) * -10); }
.ig-rk-wf .wf-cards { flex: 1; display: flex; gap: calc(var(--u) * 5); }
.ig-rk-wf .wf-cards b { flex: 1; height: calc(var(--u) * 54); background: #ddd; }
.ig-rk-wf .wf-col { flex: 0 0 32%; display: flex; flex-direction: column; gap: calc(var(--u) * 6); }
.ig-rk-wf .wf-foot { height: calc(var(--u) * 30); background: #777; margin: 0 calc(var(--u) * -10) calc(var(--u) * -10); }
.ig-rk-wf .wf-hero { height: calc(var(--u) * 46); background: #ddd; }
.ig-rk-wf .wf-nav { height: calc(var(--u) * 10); background: #eee; }
.ig-rk-wf .wf-icons { display: flex; gap: calc(var(--u) * 6); }
.ig-rk-wf .wf-icons b { flex: 1; height: calc(var(--u) * 26); background: #eee; }
.ig-rk-wf .wf-split.is-post { gap: calc(var(--u) * 10); }
.ig-rk-wf .wf-main { flex: 1; display: flex; flex-direction: column; gap: calc(var(--u) * 7); }
.ig-rk-wf .wf-h1 { height: calc(var(--u) * 12); width: 85%; background: #d6d6d6; }
.ig-rk-wf .wf-photo { height: calc(var(--u) * 56); background: #ddd; }
.ig-rk-wf .wf-kt { height: calc(var(--u) * 26); background: #f1f1f1; border-top: 2px solid #c98a8a; }
.ig-rk-wf .wf-faq { height: calc(var(--u) * 24); background: #eee; }
.ig-rk-wf .wf-col.is-toc { flex: 0 0 28%; padding-top: calc(var(--u) * 20); }
.ig-rk-wf .wf-toc { display: flex; flex-direction: column; gap: calc(var(--u) * 5); padding-left: calc(var(--u) * 5); border-left: 2px solid #ddd; }
.ig-rk-wf .wf-toc i { height: calc(var(--u) * 4); background: #e6e6e6; }
.ig-rk-wf .wf-ad { display: flex !important; align-items: center; justify-content: center; height: calc(var(--u) * 40); background: #9b2121; color: #fff; font-size: calc(var(--u) * 11); font-weight: 700; line-height: 1.1; text-align: center; transition: background .3s, opacity .3s, transform .3s; }
.ig-rk-wf .wf-ad.is-thin { height: calc(var(--u) * 16); width: 76%; margin: 0 auto; }
.ig-rk-wf .wf-ad.is-box { height: auto; aspect-ratio: 6 / 5; }
.ig-rk-wf .wf-ad.is-pick { height: calc(var(--u) * 24); width: 76%; outline: 2px dashed #9b2121; outline-offset: 2px; }
.ig-rk.is-js .wf-ad { background: #e9cfcf; color: #9b2121; }
.ig-rk.is-js .wf-ad.is-on { background: #9b2121; color: #fff; transform: scale(1.04); box-shadow: 0 0 0 3px rgba(155, 33, 33, .25); }
.ig-rk-dz { display: flex; gap: 22px; align-items: flex-start; margin-top: 34px; padding: 0 28px 24px; border: 1px solid #cfcfcf; background: #fff; }
.ig-rk-dz > .ig-ab-i { margin-top: 28px; }
.ig-rk-dz > .ig-ab-i { width: 40px; height: 40px; flex: none; }
.ig-rk-dz h3 { display: inline-block; margin: -.65em 0 10px -12px; padding: 0 12px; background: #fff; font-size: 20px; line-height: 1.3; }
.ig-rk-dz p { margin: 0 0 8px; }
.ig-rk-dz a { color: #9b2121; text-decoration: underline; }
/* dlaczego warto */
.ig-rk-why { display: grid; grid-template-columns: repeat(4, 1fr); gap: 36px; }
.ig-rk-why__ic { display: grid; place-items: center; width: 58px; height: 58px; margin-bottom: 16px; background: #9b2121; }
.ig-rk-why__ic .ig-ab-i { width: 28px; height: 28px; stroke: #fff; }
.ig-rk-why h3 { margin: 0 0 8px; font-size: 19px; }
.ig-rk-why p { margin: 0; font-size: 15px; }
/* FAQ */
.ig-rk-faq details { max-width: 900px; border-bottom: 1px solid #e5e5e5; }
.ig-rk-faq summary { position: relative; cursor: pointer; list-style: none; padding: 16px 40px 16px 0; font-weight: 700; font-size: 17px; color: #555; }
.ig-rk-faq summary::-webkit-details-marker { display: none; }
.ig-rk-faq summary::after { content: "+"; position: absolute; right: 6px; top: 13px; font-size: 22px; font-weight: 700; color: #9b2121; }
.ig-rk-faq details[open] summary { color: #9b2121; }
.ig-rk-faq details[open] summary::after { content: "–"; }
.ig-rk-faq details p { margin: 0 0 18px; }
@media (max-width: 1000px) { .ig-rk-why { grid-template-columns: 1fr 1fr; } }
@media (max-width: 900px) {
	.ig-rk-hero, .ig-rk-price { grid-template-columns: 1fr; gap: 32px; }
	.ig-rk-hero__ph img { height: 240px; }
	.ig-rk-grp { --u: .36px; grid-template-columns: 130px 1fr; gap: 18px; }
	.ig-rk-grp__wf { top: calc(var(--ig-hdr, 60px) + 12px); }
	.ig-rk-wf { box-shadow: none; }
	.ig-rk-wf .wf-ad { font-size: 0; }
	.ig-rk-slot { padding: 0 14px 14px; }
	.ig-rk-grp__h { font-size: 22px; }
	.ig-rk-t { font-size: 14px; }
	.ig-rk-t th, .ig-rk-t td { padding: 10px 8px; }
}
@media (max-width: 600px) { .ig-rk-why { grid-template-columns: 1fr; } .ig-rk-dz { padding: 0 18px 20px; } .ig-rk-dz > .ig-ab-i { display: none; } }
@media (prefers-reduced-motion: reduce) { .ig-rk-wf .wf-ad { transition: none; } }
.ig-rk-hero > *, .ig-rk-price > *, .ig-rk-grp > *, .ig-rk-why > * { min-width: 0; }
.ig-rk h1, .ig-rk h2, .ig-rk h3, .ig-rk h4 { overflow-wrap: break-word; }
/* Reklama runda 2: naglowek banerow + rabaty */
.ig-rk-ban__top { display: grid; grid-template-columns: 1.3fr 1fr; gap: 48px; align-items: center; margin-bottom: 10px; }
.ig-rk-ban__top > * { min-width: 0; }
.ig-rk-ban__top .ig-rk-lead { margin-bottom: 12px; }
.ig-rk-disc { background: #9b2121; color: #f1f1f1; padding: 26px 28px; }
.ig-rk-disc__h { margin: 0 0 16px; font-weight: 700; font-size: 17px; color: #fff; }
.ig-rk-disc__row { display: grid; grid-template-columns: repeat(3, 1fr); }
.ig-rk-disc__row span { display: block; padding: 0 14px; border-left: 1px solid rgba(241, 241, 241, .35); font-size: 15px; }
.ig-rk-disc__row span:first-child { padding-left: 0; border-left: 0; }
.ig-rk-disc__row b { display: block; font-size: clamp(32px, 3.4vw, 46px); font-weight: 900; line-height: 1.05; color: #fff; }
.ig-rk-grp__d a { color: #9b2121; text-decoration: underline; }
.ig-rk-grp__d a:hover { color: #555; }
@media (max-width: 900px) { .ig-rk-ban__top { grid-template-columns: 1fr; gap: 24px; } .ig-rk-disc { padding: 22px 18px; } .ig-rk-disc__row span { padding: 0 10px; font-size: 13px; } }
.ig-ft-ad { margin: 14px 0 0 !important; font-size: 13px; color: rgba(241, 241, 241, .75); }
.ig-ft-ad a { text-decoration: underline; }
.ig-ft-ad a:hover { color: #fff; }

/* ===== Lato hostowane lokalnie (2026-10-17, zamiast Google Fonts; Flatsome: disable_fonts=1) ===== */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/lato-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/lato-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/lato-700-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/lato-700-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(assets/fonts/lato-900-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(assets/fonts/lato-900-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ===== Strona 404 (404.php w motywie potomnym, 2026-10-17) ===== */
.ig-404 { padding: 56px var(--ig-gutter) 72px; }
.ig-404__in { max-width: 760px; }
.ig-404__code { margin: 0; font-size: 96px; font-weight: 900; line-height: 1; color: #9b2121; opacity: .25; }
.ig-404 h1 { margin: 6px 0 12px; color: #9b2121; font-size: clamp(30px, 3.4vw, 44px); }
.ig-404 h2 { margin: 32px 0 12px; font-size: 22px; }
.ig-404 .searchform { max-width: 520px; margin: 18px 0 0; }
.ig-404__links { list-style: none; margin: 0 0 28px; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 0 32px; }
.ig-404__links li { margin: 0; border-bottom: 1px solid #e5e5e5; }
.ig-404__links a { display: block; padding: 11px 0; font-weight: 700; color: #555; }
.ig-404__links a:hover { color: #9b2121; }
@media (max-width: 600px) { .ig-404__links { grid-template-columns: 1fr; } }

/* Porownywarka dzielnic: paski w kazdej kolumnie liczbowej (2026-10-17) – sortowana kolumna na czerwono */
.ig-dzp-v { display: inline-block; min-width: 112px; text-align: right; }
.ig-dzp-v b { font-weight: 400; }
.ig-dzp-mb { display: block; height: 4px; margin-top: 5px; background: #eee; }
.ig-dzp-mb i { display: block; height: 100%; background: #d6bcbc; transition: background .2s; }
.ig-dzp-cmp table[data-active="pop"] td[data-c="pop"] .ig-dzp-mb i,
.ig-dzp-cmp table[data-active="area"] td[data-c="area"] .ig-dzp-mb i,
.ig-dzp-cmp table[data-active="dens"] td[data-c="dens"] .ig-dzp-mb i { background: #9b2121; }
.ig-dzp-cmp table[data-active="pop"] td[data-c="pop"] b,
.ig-dzp-cmp table[data-active="area"] td[data-c="area"] b,
.ig-dzp-cmp table[data-active="dens"] td[data-c="dens"] b { font-weight: 700; color: #555; }

/* ===== Reklamy 2.0 (2026-10-17): miejsca na stronie glownej i we wpisach ===== */
.ig-ad--home_top, .ig-ad--home_mid { max-width: calc(970px + 2 * var(--ig-gutter)); padding: 0 var(--ig-gutter); }
.ig-ad--home_top { margin-top: 8px; }
.ig-ad--home_mid { margin: 8px auto 64px; }
.ig-ad--home_sp { max-width: calc(728px + 2 * var(--ig-gutter)); padding: 0 var(--ig-gutter); margin: 48px auto 0; }
.ig-ad--home_top .ig-ad__ph, .ig-ad--home_mid .ig-ad__ph { min-height: 250px; }
.ig-ad--home_sp .ig-ad__ph { flex-direction: row; flex-wrap: wrap; gap: 6px 16px; min-height: 90px; padding: 16px 24px; }
.ig-ad--home_side { margin: 22px 0 0; }
.ig-ad--home_side .ig-ad__ph { min-height: 250px; }
.ig-ad--home_side .ig-ad__ph-t { font-size: 18px; }
.ig-ad--home_side .ig-ad__banner, .ig-ad--home_side .ig-ad__banner img { width: 100%; }
.ig-ad--post_mid, .ig-ad--post_pick { margin: 32px auto; }
.ig-ad--post_side { margin: 24px 0 0; }
.ig-ad--post_side .ig-ad__banner, .ig-ad--post_side .ig-ad__banner img { width: 100%; }

/* ===== Archiwum „Materiały sponsorowane” (category-materialy-sponsorowane.php, 2026-10-17) ===== */
.ig-spa { padding: 40px var(--ig-gutter) 64px; }
.ig-spa__head { max-width: 820px; margin-bottom: 32px; }
.ig-spa__head h1 { margin: 0 0 14px; color: #9b2121; font-size: clamp(30px, 3.4vw, 44px); line-height: 1.15; }
.ig-spa__head p { margin: 0 0 10px; font-size: 17px; }
.ig-spa__more a { color: #9b2121; font-weight: 700; text-decoration: underline; }
.ig-spa__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px 28px; }
.ig-spa .ig-sp__title { font-size: 19px; }
.ig-spa__pag { margin-top: 40px; }
.ig-spa__pag .nav-links { display: flex; flex-wrap: wrap; gap: 8px; }
.ig-spa__pag .page-numbers { display: inline-block; min-width: 40px; padding: 8px 12px; border: 1px solid #ddd; text-align: center; font-weight: 700; color: #555; }
.ig-spa__pag .page-numbers.current, .ig-spa__pag a.page-numbers:hover { background: #9b2121; border-color: #9b2121; color: #fff; }
@media (max-width: 1000px) { .ig-spa__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .ig-spa__grid { grid-template-columns: 1fr; } }

/* ===== Naglowek dzielnicy: obrys B – mapa miasta, dzielnica na czerwono (2026-10-17) ===== */
.ig-dzs-hero.is-map { min-height: 400px; align-items: center; background: #f1f1f1; color: #555; }
.ig-dzs-hero.is-map::after { display: none; }
.ig-dzs-hero.is-map .ig-dzs-hero__in { position: relative; z-index: 1; max-width: 44%; }
.ig-dzs-hero.is-map h1 { color: #9b2121; }
.ig-dzs-hero.is-map .ig-crumbs { color: #666666; }
.ig-dzs-hero.is-map .ig-crumbs a { color: #9b2121; }
.ig-dzs-hero.is-map .ig-dzs-lead, .ig-dzs-hero.is-map .ig-dzs-lead p { color: #555; }
.ig-dzs-hero__map { position: absolute; top: 50%; right: var(--ig-gutter); width: min(54%, 860px); transform: translateY(-50%); }
.ig-dzs-hero__map .ig-dzs-loc use { fill: #e0e0e0; stroke: #f1f1f1; stroke-width: 1; }
.ig-dzs-hero__map .ig-dzs-loc use.hl { fill: #9b2121; stroke: #fff; stroke-width: 1.5; }
@media (max-width: 900px) {
	.ig-dzs-hero.is-map { flex-direction: column; align-items: stretch; min-height: 0; padding-top: 24px; }
	.ig-dzs-hero__map { position: static; width: 100%; transform: none; margin: 0 0 12px; order: -1; }
	.ig-dzs-hero.is-map .ig-dzs-hero__in { max-width: 100%; }
}

.ig-dzs-hero.is-map .ig-dzs-lead strong { color: #9b2121; }
.ig-dzs-hero.is-map ~ .ig-dzs-nums .ig-dzs-locbox { display: none; } /* mapa jest juz w naglowku */
.ig-dzs-hero.is-map ~ .ig-dzs-nums .ig-dzs-nums__g { grid-template-columns: 1fr; }
/* obrys B: mapa dopasowana do wysokosci naglowka (nie wychodzi poza pas) */
.ig-dzs-hero.is-map { min-height: 420px; }
.ig-dzs-hero__map { top: 28px; bottom: 28px; transform: none; width: auto; display: flex; justify-content: flex-end; }
.ig-dzs-hero__map .ig-dzs-loc { width: auto; height: 100%; max-width: 52vw; }
@media (max-width: 900px) { .ig-dzs-hero__map { display: block; } .ig-dzs-hero__map .ig-dzs-loc { width: 100%; height: auto; max-width: none; } }
/* FAQ na cala szerokosc w dwoch kolumnach – /dzielnice/ i /reklama/ (2026-10-22) */
.ig-dzp-faqsec { max-width: none; }
.ig-dzp-faq, .ig-rk-faq { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 56px; align-items: start; }
.ig-rk-faq > h2 { grid-column: 1 / -1; }
.ig-rk-faq details { max-width: none; }
@media (max-width: 800px) { .ig-dzp-faq, .ig-rk-faq { grid-template-columns: 1fr; } }

/* Tabele we wpisach – styl portalu dla wszystkich tabel (2026-10-23): bez wersalików, ramka w kolorze portalu, jeden kolor wierszy */
.ig-entry .ig-table-wrap{overflow-x:auto;margin:10px 0 28px;border:1px solid #9b2121;border-radius:3px;-webkit-overflow-scrolling:touch}
.ig-entry .ig-table-wrap table{width:100%;min-width:480px;margin:0;border-collapse:collapse;border:0;font-size:15.5px;line-height:1.45}
.ig-entry table:not(.ig-place-info) th{text-transform:none!important;letter-spacing:0!important}
.ig-entry .ig-table-wrap thead th{background:#9b2121;color:#fff;font-weight:600;font-size:15px;padding:11px 14px;text-align:left;border:0;white-space:nowrap}
.ig-entry .ig-table-wrap td{padding:10px 14px;border:0;border-top:1px solid #e4e4e4;color:#333;vertical-align:top}
.ig-entry .ig-table-wrap tbody tr,.ig-entry .ig-table-wrap tbody td{background:#fff!important}
.ig-entry .ig-table-wrap th:first-child,.ig-entry .ig-table-wrap td:first-child{width:38px;text-align:center;color:#9b2121;font-weight:600}

/* ===== 2026-10-29: strzalki SVG (ig_arrow), ikony Tabler, sekcja "Ostatnio dodane" na glownej ===== */
.ig-ar { display: inline-block; width: .85em; height: .85em; margin-left: .3em; vertical-align: -.08em; flex: none; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; transition: transform .25s; }
.ig-ar--tri { fill: currentColor; stroke: none; }
.ig-spa__pag .prev .ig-ar { margin: 0 .3em 0 0; }
a:hover > .ig-ar--chev, a:hover > span > .ig-ar--chev, a:hover > b > .ig-ar--chev { transform: translateX(3px); }
.ig-spa__pag a.prev:hover > .ig-ar--chev { transform: translateX(-3px); }
a:hover > i > .ig-ar--diag { transform: translate(2px, -2px); }
.ig-ab-hubs i .ig-ar, .ig-ct-about i .ig-ar { width: 16px; height: 16px; margin: 0; }
.ig-ab-hubs i { align-self: flex-start; margin-top: 4px; }
.ig-ab-aud li a .ig-ar, .ig-ab-more .ig-ar, .ig-ft-more .ig-ar { vertical-align: -.1em; }
svg.ig-tb:not(.ig-ico--check) { stroke-width: 1.5; }

/* Ostatnio dodane (6 kart, rowne wysokosci) + Najczesciej czytane - naglowki obu kolumn w jednej linii */
.ig-rec { display: grid; grid-template-columns: 1fr; gap: 48px; align-items: start; border-top: 1px solid #eee; }
.ig-rec.has-pop { grid-template-columns: minmax(0, 1fr) 330px; }
.ig-rec .ig-home-h2 { margin: 0 0 24px; min-height: 1.2em; }
.ig-rec__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 34px 26px; }
.ig-rec__card { margin: 0; }
.ig-rec__card a { display: flex; flex-direction: column; height: 100%; color: #555; }
.ig-rec__img { display: block; aspect-ratio: 3 / 2; overflow: hidden; background: #f1f1f1; }
.ig-rec__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .6s cubic-bezier(.2, .7, .2, 1); }
.ig-rec__card a:hover img { transform: scale(1.04); }
.ig-rec__lb { display: block; margin: 12px 0 4px; font-size: 13px; line-height: 1.3; color: #666666; }
.ig-rec__title { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; min-height: calc(3 * 1.35em); margin: 0; font-size: 17px; line-height: 1.35; color: #444; transition: color .2s; }
.ig-rec__card a:hover .ig-rec__title { color: #9b2121; }
.ig-rec__card time { display: block; margin-top: 8px; font-size: 13px; color: #6b6b6b; }
.ig-rec__side { min-width: 0; }
.ig-pop { list-style: none; margin: 0; padding: 0; }
.ig-pop li { margin: 0; list-style: none; border-bottom: 1px solid #ececec; }
.ig-pop li:first-child a { padding-top: 0; }
.ig-pop a { display: grid; grid-template-columns: 96px 1fr; gap: 14px; align-items: center; padding: 14px 0; color: #444; }
.ig-pop__img { display: block; aspect-ratio: 1; overflow: hidden; background: #f1f1f1; }
.ig-pop__img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ig-pop .ig-rec__lb { margin: 0 0 2px; font-size: 12.5px; }
.ig-pop b { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; font-size: 15px; line-height: 1.35; transition: color .2s; }
.ig-pop a:hover b { color: #9b2121; }
@media (max-width: 1100px) { .ig-rec.has-pop { grid-template-columns: 1fr; } .ig-pop { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 26px; } .ig-pop li:first-child a, .ig-pop li a { padding-top: 14px; } }
@media (max-width: 900px) { .ig-rec__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .ig-rec__grid, .ig-pop { grid-template-columns: 1fr; } .ig-rec__title { min-height: 0; } }

/* R4: tytul na linii ramki ma szerokosc tekstu (motyw daje naglowkom 100%) i maly odstep - linia dochodzi do napisu */
.ig-ab-corr h2, .ig-dzs-inline > .ig-dzs-inline__h, .ig-dzs-key__h, .ig-rk-slot h4, .ig-rk-dz h3, .ig-dz__list details[open] summary { width: auto !important; max-width: 100%; padding-left: 6px !important; padding-right: 6px !important; }
.ig-ab-corr h2, .ig-rk-dz h3 { margin-left: -6px !important; }
.ig-dzs-inline > .ig-dzs-inline__h, .ig-dzs-key__h, .ig-rk-slot h4 { margin-left: -6px !important; }
.ig-dz__list details[open] summary { margin-left: -6px; }
/* ===== Social media: telefony (O nas, strona główna) i pasek "Obserwuj nas" we wpisach – 2026-10-29 ===== */
.igs-ph{display:flex;flex-direction:column;align-items:center;gap:16px;flex:none}
.igs-frame{position:relative;width:300px;height:600px;border-radius:48px;background:#1b1b1d;padding:11px;box-shadow:0 0 0 2px #3a3a3c inset,0 30px 60px -20px rgba(0,0,0,.35),0 12px 24px -12px rgba(0,0,0,.25)}
.igs-bl,.igs-br{position:absolute;width:3px;background:#2c2c2e;border-radius:2px}
.igs-bl{left:-3px;top:110px;height:56px;box-shadow:0 70px 0 #2c2c2e}.igs-br{right:-3px;top:150px;height:80px}
.igs-scr{position:relative;height:100%;border-radius:38px;overflow:hidden;background:#fff;font:13px/1.35 -apple-system,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:#0c0c0c;text-align:left;letter-spacing:0}
.igs-scr a{color:inherit;text-decoration:none}
.igs-scr img{max-width:none}
.igs-scr p{margin:0}
.igs-st{display:flex;justify-content:space-between;align-items:center;height:44px;padding:0 24px 0 30px;font-size:14px}
.igs-isl{position:absolute;left:50%;top:10px;transform:translateX(-50%);width:92px;height:26px;border-radius:20px;background:#000}
.igs-sig{display:flex;gap:5px;align-items:center;fill:#0c0c0c}
.igs-bat{width:24px;height:11px;border:1.3px solid #9a9a9a;border-radius:3.5px;padding:1px}.igs-bat i{display:block;height:100%;width:78%;background:#0c0c0c;border-radius:1.5px}
/* przewijanie ekranu */
.igs-view{position:absolute;left:0;right:0;overflow:hidden}
.igs-ig .igs-view{top:84px;bottom:64px;--vh:430px}
.igs-fb .igs-view{top:84px;bottom:0;--vh:494px}
.igs-roll{animation:igs-scroll 12s ease-in-out infinite alternate;will-change:transform}
.igs-fb .igs-roll{animation-duration:48s;animation-delay:-6s}
.igs-frame:hover .igs-roll{animation-play-state:paused}
@keyframes igs-scroll{0%,8%{transform:translateY(0)}92%,100%{transform:translateY(calc(-100% + var(--vh)))}}
@media (prefers-reduced-motion:reduce){.igs-roll{animation:none}}
/* instagram */
.igs-ig-top{display:flex;justify-content:space-between;align-items:center;padding:2px 14px 8px}
.igs-ig-top b{display:flex;align-items:center;gap:3px;font-size:19px;font-weight:700}
.igs-ig-top span{display:flex;gap:18px}
.igs-ig-head{display:flex;align-items:center;gap:14px;padding:4px 14px 8px}
.igs-ig-av{width:72px;height:72px;border-radius:50%;border:1px solid #dbdbdb;flex:none}
.igs-ig-r{flex:1;min-width:0}.igs-ig-r>b{display:block;font-size:13.5px;margin-bottom:6px}
.igs-ig-stats{display:flex;justify-content:space-between;gap:6px}
.igs-ig-stats span{display:flex;flex-direction:column;font-size:11.5px;line-height:1.25}.igs-ig-stats b{font-size:15px}
.igs-ig-bio{padding:0 14px;font-size:13px}
.igs-ig-ln{display:flex;align-items:center;gap:4px;color:#00376b;font-weight:600;margin-top:2px}
.igs-ig-btns{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:12px 14px 10px}
.igs-ig-btns a{display:block;text-align:center;padding:7px 0;border-radius:8px;font-weight:600;font-size:13px}
.igs-ig-btns .b1{background:#4a5df9;color:#fff}.igs-ig-btns .b2{background:#efefef}
.igs-ig-tabs{display:flex;border-bottom:1px solid #dbdbdb}
.igs-ig-tabs span{flex:1;display:grid;place-items:center;height:42px;color:#8e8e8e}
.igs-ig-tabs .on{color:#0c0c0c;box-shadow:inset 0 -1px 0 #0c0c0c}
.igs-ig-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5px}
.igs-gi{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;background:#eee}
.igs-gi img{width:100%;height:100%;object-fit:cover;display:block}
.igs-bd{position:absolute;top:6px;right:6px;width:17px;height:17px;filter:drop-shadow(0 0 2px rgba(0,0,0,.45))}
.igs-nav{position:absolute;left:0;right:0;bottom:0;height:64px;padding:8px 22px 0;display:flex;justify-content:space-between;align-items:flex-start;background:#fff;border-top:1px solid #efefef;z-index:2}
.igs-nav img{width:25px;height:25px;border-radius:50%;box-shadow:0 0 0 1.5px #0c0c0c}
/* facebook */
.igs-fb-top{display:grid;grid-template-columns:24px 1fr 22px;gap:10px;align-items:center;padding:2px 12px 8px}
.igs-fb-top b{font-size:17px;font-weight:700;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.igs-fb-cov{height:112px;overflow:hidden;background:#ccd}.igs-fb-cov img{width:100%;height:100%;object-fit:cover;display:block}
.igs-fb-id{padding:0 12px}
.igs-fb-av{display:block;width:92px;height:92px;margin-top:-50px;border-radius:50%;border:3.5px solid #fff;position:relative;background:#fff;object-fit:cover}
.igs-fb-nm{display:block;font-size:21px;font-weight:700;margin:6px 0 1px}
.igs-fb-id small{display:block;color:#65676b;font-size:13px}.igs-fb-id small b{color:#050505}
.igs-fb-id p{margin:6px 0 0;font-size:13px;color:#050505}
.igs-fb-btns{display:grid;grid-template-columns:1fr 1fr 40px;gap:6px;padding:12px}
.igs-fb-btns>*{display:flex;align-items:center;justify-content:center;gap:5px;height:34px;border-radius:7px;font-weight:600;font-size:13.5px}
.igs-fb-btns .b1{background:#0866ff;color:#fff}.igs-fb-btns .b2,.igs-fb-btns .b3{background:#e4e6eb}
.igs-fb-tabs{display:flex;gap:6px;padding:0 12px 10px;border-bottom:6px solid #f0f2f5;font-size:13.5px;font-weight:600;color:#65676b}
.igs-fb-tabs span{padding:6px 11px;border-radius:18px}.igs-fb-tabs .on{background:#ebf5ff;color:#0657d1}
.igs-fb-feed{background:#f0f2f5}
.igs-fp{background:#fff;margin-bottom:6px}
.igs-fp-h{display:flex;align-items:center;gap:8px;padding:10px 12px 6px}
.igs-fp-h img{width:38px;height:38px;border-radius:50%}
.igs-fp-h div{flex:1}.igs-fp-h b{display:block;font-size:13.5px}
.igs-fp-h small{display:flex;align-items:center;gap:3px;color:#65676b;font-size:12px}.igs-fp-h>svg{color:#65676b}
.igs-fp-t{padding:0 12px 8px;font-size:13.5px}.igs-fp-t span{color:#65676b}
.igs-fp-im{display:block;aspect-ratio:4/5;overflow:hidden;background:#ddd}.igs-fp-im img{width:100%;height:100%;object-fit:cover;display:block}
.igs-fp-r{display:flex;padding:7px 12px;color:#65676b;font-size:12.5px}.igs-fp-r span{display:flex;align-items:center}
.igs-re{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#0866ff;color:#fff;border:1.5px solid #fff;margin-right:-3px}
.igs-re.h{background:#f33e58;margin-right:4px}.igs-re svg{fill:#fff;stroke:#fff;stroke-width:1}
.igs-fp-a{display:flex;justify-content:space-around;border-top:1px solid #ced0d4;margin:0 12px;padding:6px 0 8px;color:#65676b;font-size:12.5px;font-weight:600}
.igs-fp-a span{display:flex;align-items:center;gap:5px}
/* przyciski */
.igs-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid #9b2121;color:#9b2121;background:#fff;font-weight:700;font-size:14px;line-height:1.2;text-decoration:none;transition:background .2s,color .2s}
.igs-btn:hover{background:#9b2121;color:#fff}
/* O nas */
.igs-about{overflow:hidden;background:linear-gradient(transparent 0,transparent 58%,#f1f1f1 58%);padding-bottom:40px}
.igs-about__hd{text-align:center;max-width:720px;margin:0 auto 34px}
.igs-about__hd p{margin:8px 0 0}
.igs-phones{display:flex;justify-content:center;gap:40px;padding:10px 0 6px}
.igs-phones .igs-ph:first-child .igs-frame{transform:rotate(-3deg) translateY(10px)}
.igs-phones .igs-ph:last-child .igs-frame{transform:rotate(3deg) translateY(10px)}
.igs-phones .igs-btn{margin-top:14px}
/* strona glowna: czerwony pas */
.igs-band{position:relative;background:#9b2121;color:#fff;margin:160px 0 150px;padding:0!important}
.igs-band__in{max-width:1300px;margin:0 auto;padding:0 30px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;min-height:380px}
.igs-band .ig-home-h2{color:#fff;margin:0 0 12px}
.igs-band__txt p{margin:0 0 22px;max-width:470px;color:#fff}
.igs-band__btns{display:flex;flex-wrap:wrap;gap:10px}
.igs-band .igs-btn{background:transparent;border-color:#fff;color:#fff}.igs-band .igs-btn:hover{background:#fff;color:#9b2121}
.igs-band__pp{position:relative;height:380px}
.igs-band__pp .igs-ph{position:absolute;top:-90px}
.igs-band__pp .igs-ph:nth-child(1){left:0;z-index:1}.igs-band__pp .igs-ph:nth-child(1) .igs-frame{transform:rotate(-6deg)}
.igs-band__pp .igs-ph:nth-child(2){left:auto;right:0;top:-70px}.igs-band__pp .igs-ph:nth-child(2) .igs-frame{transform:rotate(5deg)}
@media (max-width:1100px){.igs-band__pp .igs-ph:nth-child(2){right:-40px}}
@media (max-width:900px){
 .igs-band{margin:40px 0 120px}
 .igs-band__in{grid-template-columns:1fr;padding:44px 20px 0;min-height:0}
 .igs-band__pp{height:470px}
 .igs-band__pp .igs-ph{top:10px}
 .igs-band__pp .igs-ph:nth-child(1){left:calc(50% - 310px)}.igs-band__pp .igs-ph:nth-child(2){left:calc(50% + 10px);right:auto;top:40px}}
@media (max-width:700px){
 .igs-phones{overflow-x:auto;scroll-snap-type:x mandatory;justify-content:flex-start;padding:10px 16px 12px;margin:0 -16px;gap:18px;-webkit-overflow-scrolling:touch}
 .igs-phones .igs-ph{scroll-snap-align:center}
 .igs-phones .igs-ph .igs-frame{transform:none!important}
 .igs-band__pp .igs-ph:nth-child(2){display:none}
 .igs-band__pp .igs-ph:nth-child(1){left:50%;transform:translateX(-50%)}.igs-band__pp .igs-ph:nth-child(1) .igs-frame{transform:rotate(-3deg)}}
/* wpis: boczny pasek */
.ig-single__main{position:relative}
.igs-rail{display:none}
@media (min-width:1340px){
 .igs-rail{display:block;position:absolute;top:0;bottom:0;left:-74px;width:44px}
 .igs-rail__in{position:sticky;top:calc(var(--ig-hdr,0px) + 130px);display:flex;flex-direction:column;align-items:center;gap:8px}
 .igs-rail__t{writing-mode:vertical-rl;transform:rotate(180deg);font-size:12.5px;color: #6b6b6b;margin-bottom:6px;white-space:nowrap}
 .igs-rail a{display:grid;place-items:center;width:42px;height:42px;border:1px solid #e2e2e2;border-radius:50%;color:#555;background:#fff;transition:background .2s,color .2s,border-color .2s}
 .igs-rail a:hover{color:#fff;background:#9b2121;border-color:#9b2121}}

/* ===== 3. Ustawienia z panelu Flatsome (kolory, czcionki, wysokosci naglowka) - przeniesione 1:1 ===== */
:root {--primary-color: #9b2121;}/* Site Width */.header-main{height: 200px}#logo img{max-height: 200px}#logo{width:269px;}.header-bottom{min-height: 78px}.header-top{min-height: 31px}.transparent .header-main{height: 362px}.transparent #logo img{max-height: 362px}.has-transparent + .page-title:first-of-type,.has-transparent + #main > .page-title,.has-transparent + #main > div > .page-title,.has-transparent + #main .page-header-wrapper:first-of-type .page-title{padding-top: 442px;}.header.show-on-scroll,.stuck .header-main{height:70px!important}.stuck #logo img{max-height: 70px!important}.header-bottom {background-color: #f1f1f1}.stuck .header-main .nav > li > a{line-height: 50px }.header-bottom-nav > li > a{line-height: 16px }@media (max-width: 549px) {.header-main{height: 70px}#logo img{max-height: 70px}}/* Color */.accordion-title.active, .has-icon-bg .icon .icon-inner,.logo a, .primary.is-underline, .primary.is-link, .badge-outline .badge-inner, .nav-outline > li.active> a,.nav-outline >li.active > a, .cart-icon strong,[data-color='primary'], .is-outline.primary{color: #9b2121;}/* Color !important */[data-text-color="primary"]{color: #9b2121!important;}/* Background Color */[data-text-bg="primary"]{background-color: #9b2121;}/* Background */.scroll-to-bullets a,.featured-title, .label-new.menu-item > a:after, .nav-pagination > li > .current,.nav-pagination > li > span:hover,.nav-pagination > li > a:hover,.has-hover:hover .badge-outline .badge-inner,button[type="submit"], .button.wc-forward:not(.checkout):not(.checkout-button), .button.submit-button, .button.primary:not(.is-outline),.featured-table .title,.is-outline:hover, .has-icon:hover .icon-label,.nav-dropdown-bold .nav-column li > a:hover, .nav-dropdown.nav-dropdown-bold > li > a:hover, .nav-dropdown-bold.dark .nav-column li > a:hover, .nav-dropdown.nav-dropdown-bold.dark > li > a:hover, .is-outline:hover, .tagcloud a:hover,.grid-tools a, input[type='submit']:not(.is-form), .box-badge:hover .box-text, input.button.alt,.nav-box > li > a:hover,.nav-box > li.active > a,.nav-pills > li.active > a ,.current-dropdown .cart-icon strong, .cart-icon:hover strong, .nav-line-bottom > li > a:before, .nav-line-grow > li > a:before, .nav-line > li > a:before,.banner, .header-top, .slider-nav-circle .flickity-prev-next-button:hover svg, .slider-nav-circle .flickity-prev-next-button:hover .arrow, .primary.is-outline:hover, .button.primary:not(.is-outline), input[type='submit'].primary, input[type='submit'].primary, input[type='reset'].button, input[type='button'].primary, .badge-inner{background-color: #9b2121;}/* Border */.nav-vertical.nav-tabs > li.active > a,.scroll-to-bullets a.active,.nav-pagination > li > .current,.nav-pagination > li > span:hover,.nav-pagination > li > a:hover,.has-hover:hover .badge-outline .badge-inner,.accordion-title.active,.featured-table,.is-outline:hover, .tagcloud a:hover,blockquote, .has-border, .cart-icon strong:after,.cart-icon strong,.blockUI:before, .processing:before,.loading-spin, .slider-nav-circle .flickity-prev-next-button:hover svg, .slider-nav-circle .flickity-prev-next-button:hover .arrow, .primary.is-outline:hover{border-color: #9b2121}.nav-tabs > li.active > a{border-top-color: #9b2121}.widget_shopping_cart_content .blockUI.blockOverlay:before { border-left-color: #9b2121 }.woocommerce-checkout-review-order .blockUI.blockOverlay:before { border-left-color: #9b2121 }/* Fill */.slider .flickity-prev-next-button:hover svg,.slider .flickity-prev-next-button:hover .arrow{fill: #9b2121;}/* Background Color */[data-icon-label]:after, .secondary.is-underline:hover,.secondary.is-outline:hover,.icon-label,.button.secondary:not(.is-outline),.button.alt:not(.is-outline), .badge-inner.on-sale, .button.checkout, .single_add_to_cart_button{ background-color:#f1c40f; }[data-text-bg="secondary"]{background-color: #f1c40f;}/* Color */.secondary.is-underline,.secondary.is-link, .secondary.is-outline,.stars a.active, .star-rating:before, .woocommerce-page .star-rating:before,.star-rating span:before, .color-secondary{color: #f1c40f}/* Color !important */[data-text-color="secondary"]{color: #f1c40f!important;}/* Border */.secondary.is-outline:hover{border-color:#f1c40f}body{font-family:"Lato", sans-serif}body{font-weight: 400}body{color: #444444}.nav > li > a {font-family:"Lato", sans-serif;}.nav > li > a {font-weight: 700;}h1,h2,h3,h4,h5,h6,.heading-font, .off-canvas-center .nav-sidebar.nav-vertical > li > a{font-family: "Lato", sans-serif;}h1,h2,h3,h4,h5,h6,.heading-font,.banner h1,.banner h2{font-weight: 700;}h1,h2,h3,h4,h5,h6,.heading-font{color: #9b2121;}.alt-font{font-family: "Dancing Script", sans-serif;}.alt-font{font-weight: 400!important;}a{color: #045eb3;}.label-new.menu-item > a:after{content:"New";}.label-hot.menu-item > a:after{content:"Hot";}.label-sale.menu-item > a:after{content:"Sale";}.label-popular.menu-item > a:after{content:"Popular";}

/* ===== 4. Motyw: ikony SVG zamiast fontu fl-icons, przycisk menu na telefonie ===== */
i[class^="icon-"] > svg { display: block; width: 1em; height: 1.2em; } /* wysokosc jak wiersz starego fontu fl-icons (line-height 1.2) */
.header .ig-menu-btn { display: inline-block; margin: 0; padding: 10px 0; min-height: 0; border: 0; border-radius: 0; background: none; box-shadow: none; color: rgba(102, 102, 102, .85); font-size: 24.32px; line-height: 1.2; letter-spacing: 0; text-transform: none; cursor: pointer; }
.header .ig-menu-btn:hover { color: rgba(17, 17, 17, .85); box-shadow: none; }
.header .ig-menu-btn i { font-size: 1em; top: 0; }
/* Kolumny Dzielnic: dawniej nad kazda kolumna stal pusty link (bez tekstu) - zostaje sam odstep */
.nav-dropdown > .nav-dropdown-col > .nav-column { margin-top: 21px; }
#main-menu .nav-sidebar-ul { padding-top: 10px; }

/* ===== 5. Dostepnosc (WCAG 2.1, 2026-10-31) ===== */

/* Fokus z klawiatury: dwukolorowa obwodka (biala w srodku, czerwona na zewnatrz) - widoczna na bialym, szarym i czerwonym tle.
   Pojawia sie tylko przy obsludze klawiatura (:focus-visible), nie przy klikaniu mysza. */
:focus-visible { outline: 2px solid #fff !important; outline-offset: 0 !important; box-shadow: 0 0 0 4px #9b2121 !important; border-radius: 1px; }
.header-top :focus-visible, .ig-footer :focus-visible { box-shadow: 0 0 0 4px #111 !important; }
.skip-link:focus { position: fixed !important; top: 8px; left: 8px; z-index: 100001; width: auto; height: auto; clip: auto !important; clip-path: none !important; padding: 12px 18px; background: #fff; color: #9b2121; font-weight: 700; }

/* Przyciski dostepnosci w czerwonym pasku: "Aa" (rozmiar tekstu, 3 stopnie) i kontrast */
.header-top .ig-a11y { display: flex; align-items: center; gap: 4px; margin: 0 12px 0 0; padding: 0; }
.header-top .ig-a11y__btn { display: inline-flex; align-items: center; justify-content: center; gap: 1px; min-width: 28px; height: 24px; min-height: 0; margin: 0; padding: 0 6px; border: 1px solid rgba(255, 255, 255, .45); border-radius: 0; background: none; box-shadow: none; color: #fff; font: 700 13px/1 Lato, sans-serif; letter-spacing: 0; text-transform: none; cursor: pointer; }
.header-top .ig-a11y__btn:hover { background: rgba(255, 255, 255, .15); border-color: #fff; }
.header-top .ig-a11y__btn[aria-pressed="true"], html.ig-fs1 .header-top .ig-a11y__fs, html.ig-fs2 .header-top .ig-a11y__fs { background: #fff; border-color: #fff; color: #9b2121; }
.header-top .ig-a11y__btn small { font-size: 10px; font-weight: 700; }
.header-top .ig-a11y__btn svg { display: block; width: 14px; height: 14px; }
.header-top .ig-a11y__lvl { font-size: 10px; margin-left: 2px; }

/* Na telefonie przyciski stoja w naglowku obok logo (w czerwonym pasku brakuje miejsca) */
@media (max-width: 849px) {
	.header-top .ig-a11y--top { display: none; }
	/* boki naglowka rownej szerokosci - logo zostaje na srodku mimo szerszych przyciskow po prawej */
	.header-main .header-inner > .flex-col.show-for-medium { flex: 1 1 0; }
	.header-main .header-inner > .flex-col.show-for-medium.flex-right > ul { justify-content: flex-end; }
	.header-main #logo { width: auto; flex: 0 0 auto; }
}
.header-main .ig-a11y--mob { display: flex; align-items: center; gap: 6px; margin: 0; padding: 0; }
.header-main .ig-a11y--mob .ig-a11y__btn { display: inline-flex; align-items: center; justify-content: center; gap: 1px; min-width: 34px; height: 32px; min-height: 0; margin: 0; padding: 0 6px; border: 1px solid #c8c8c8; border-radius: 0; background: #fff; box-shadow: none; color: #444; font: 700 15px/1 Lato, sans-serif; letter-spacing: 0; text-transform: none; cursor: pointer; }
.header-main .ig-a11y--mob .ig-a11y__btn small { font-size: 11px; font-weight: 700; }
.header-main .ig-a11y--mob .ig-a11y__btn svg { display: block; width: 16px; height: 16px; }
.header-main .ig-a11y--mob .ig-a11y__lvl { font-size: 11px; margin-left: 1px; }
.header-main .ig-a11y--mob .ig-a11y__btn[aria-pressed="true"], html.ig-fs1 .header-main .ig-a11y--mob .ig-a11y__fs, html.ig-fs2 .header-main .ig-a11y--mob .ig-a11y__fs { background: #9b2121; border-color: #9b2121; color: #fff; }

@media (max-width: 359px) { .header-main .ig-a11y--mob { gap: 4px; } .header-main .ig-a11y--mob .ig-a11y__btn { min-width: 28px; height: 28px; padding: 0 3px; font-size: 13px; } .header-main .ig-a11y--mob .ig-a11y__btn svg { width: 14px; height: 14px; } }

/* Ikony social w pasku: pole klikniecia 24 x 24 px (wyglad bez zmian) */
.header-top .social-icons { display: flex; flex-wrap: nowrap; }
.header-top .social-icons a.icon { display: inline-flex; align-items: center; justify-content: center; min-width: 24px; min-height: 24px; margin: 0; }

/* Linki w tekstach stron prawnych (polityki, regulamin, deklaracja) podkreslone - nie tylko kolorem */
.ig-doc a { text-decoration: underline; text-underline-offset: 2px; }

/* Wiekszy tekst (przycisk "Aa"): tekst ciagly w tresci; naglowki, menu i karty ze zdjeciami bez zmian */
html.ig-fs1 #main :is(p, li, td, th, dd, dt, summary, figcaption, blockquote, label, .ig-faq__a):not(.ig-fan *):not(.ig-hc *):not(.ig-sp__card *):not(.ig-related__card *):not(.ig-rec__card *) { font-size: 19px !important; line-height: 1.65 !important; }
html.ig-fs2 #main :is(p, li, td, th, dd, dt, summary, figcaption, blockquote, label, .ig-faq__a):not(.ig-fan *):not(.ig-hc *):not(.ig-sp__card *):not(.ig-related__card *):not(.ig-rec__card *) { font-size: 21px !important; line-height: 1.7 !important; }

/* Wysoki kontrast (przycisk w pasku): szary tekst -> prawie czarny, linki ciemniejsze i podkreslone.
   Kolory marki, bialy tekst na zdjeciach i czerwonych blokach, pasek i stopka zostaja bez zmian. */
html.ig-contrast #main :is(.ig-entry, .ig-dzs-txt, .ig-doc, .ig-faq) a:not(.ig-btn) { color: #00356b !important; text-decoration: underline !important; text-underline-offset: 2px; }
html.ig-contrast .nav-dropdown, html.ig-contrast .nav-dropdown li > a { color: #111 !important; }
html.ig-contrast .header-bottom .nav > li > a { color: #111 !important; }
html.ig-contrast #main hr { border-color: #767676; }
/* Rozwijane menu Dzielnice: ukryte linki nie lapia fokusu (Tab przeskakuje do kolejnej pozycji menu); otwiera je najechanie mysza albo strzalka w dol */
.header-bottom .nav-dropdown { visibility: hidden; transition: opacity .25s, visibility 0s linear .25s; }
.header-bottom li.current-dropdown > .nav-dropdown, .no-js .header-bottom li.has-dropdown:hover > .nav-dropdown { visibility: visible; transition-delay: 0s; }
/* Reguly wygenerowane automatycznie z CSS strony (hc-build.js): kazda regula z szarym kolorem tekstu dostaje #111 */
html.ig-contrast body { color: #111 !important; }
html.ig-contrast .nav-dropdown { color: #111 !important; }
html.ig-contrast .nav > li > a,
html.ig-contrast .nav-dropdown > li > a,
html.ig-contrast .nav-column > li > a { color: #111 !important; }
html.ig-contrast .nav-vertical > li > ul li a { color: #111 !important; }
html.ig-contrast td { color: #111 !important; }
html.ig-contrast .ig-doc h3 { color: #111 !important; }
html.ig-contrast .ig-doc th { color: #111 !important; }
html.ig-contrast .ig-home-sub { color: #111 !important; }
html.ig-contrast .ig-hub__desc { color: #111 !important; }
html.ig-contrast .ig-hub__posts a { color: #111 !important; }
html.ig-contrast .ig-dz__lead { color: #111 !important; }
html.ig-contrast .ig-dz__list summary { color: #111 !important; }
html.ig-contrast .ig-dz__list details p { color: #111 !important; }
html.ig-contrast .ig-dz__summary { color: #111 !important; }
html.ig-contrast .ig-sp__card a { color: #111 !important; }
html.ig-contrast .ig-sp__tag { color: #111 !important; }
html.ig-contrast .ig-sp__title { color: #111 !important; }
html.ig-contrast .ig-sp__card time { color: #111 !important; }
html.ig-contrast .ig-pol li a { color: #111 !important; }
html.ig-contrast .ig-crumbs { color: #111 !important; }
html.ig-contrast .ig-meta__name { color: #111 !important; }
html.ig-contrast .ig-meta__role { color: #111 !important; }
html.ig-contrast .ig-meta__facts { color: #111 !important; }
html.ig-contrast .ig-faq summary { color: #111 !important; }
html.ig-contrast .ig-abox__by { color: #111 !important; }
html.ig-contrast .ig-toc__h { color: #111 !important; }
html.ig-contrast .ig-toc a { color: #111 !important; }
html.ig-contrast .ig-gsrc { color: #111 !important; }
html.ig-contrast .ig-related__card a { color: #111 !important; }
html.ig-contrast .ig-related__card h3 { color: #111 !important; }
html.ig-contrast .ig-related__card time { color: #111 !important; }
html.ig-contrast .ig-hub-hero__upd { color: #111 !important; }
html.ig-contrast .ig-hub-nav a { color: #111 !important; }
html.ig-contrast .ig-hc a { color: #111 !important; }
html.ig-contrast .ig-hc__m { color: #111 !important; }
html.ig-contrast .ig-hc__t { color: #111 !important; }
html.ig-contrast .ig-hc__ex { color: #111 !important; }
html.ig-contrast .ig-sp-tag { color: #111 !important; }
html.ig-contrast .ig-hub-latest__side a { color: #111 !important; }
html.ig-contrast .ig-hub-topic p { color: #111 !important; }
html.ig-contrast .ig-hub-topic strong { color: #111 !important; }
html.ig-contrast .ig-hub-guides a { color: #111 !important; }
html.ig-contrast .ig-hub-others__list a { color: #111 !important; }
html.ig-contrast .ig-ad__lbl { color: #111 !important; }
html.ig-contrast .ig-ad__ph { color: #111 !important; }
html.ig-contrast .ig-ad__ph-s { color: #111 !important; }
html.ig-contrast .ig-ct-form label { color: #111 !important; }
html.ig-contrast .ig-ct-form em { color: #111 !important; }
html.ig-contrast .ig-ct-form input[type=text],
html.ig-contrast .ig-ct-form input[type=email],
html.ig-contrast .ig-ct-form input[type=tel],
html.ig-contrast .ig-ct-form select,
html.ig-contrast .ig-ct-form textarea { color: #111 !important; }
html.ig-contrast .ig-ct-check { color: #111 !important; }
html.ig-contrast .ig-ct-rc { color: #111 !important; }
html.ig-contrast .ig-ct-rc a { color: #111 !important; }
html.ig-contrast .ig-ab h3 { color: #111 !important; }
html.ig-contrast .ig-ab-photo figcaption { color: #111 !important; }
html.ig-contrast .ig-ab-aud p { color: #111 !important; }
html.ig-contrast .ig-ab-steps b { color: #111 !important; }
html.ig-contrast .ig-ab-steps li > span:last-child { color: #111 !important; }
html.ig-contrast .ig-ab-person b { color: #111 !important; }
html.ig-contrast .ig-ab-person a { color: #111 !important; }
html.ig-contrast .ig-ab-hubs a { color: #111 !important; }
html.ig-contrast .ig-ab-hubs b { color: #111 !important; }
html.ig-contrast .ig-ab-upd { color: #111 !important; }
html.ig-contrast .ig-dzp h3 { color: #111 !important; }
html.ig-contrast .ig-dzp-zone p { color: #111 !important; }
html.ig-contrast .ig-dzp-zone li a { color: #111 !important; }
html.ig-contrast .ig-dzp-zone li span { color: #111 !important; }
html.ig-contrast .ig-dzp-zone li .ig-dzp-n { color: #111 !important; }
html.ig-contrast .ig-dzp-legend { color: #111 !important; }
html.ig-contrast .ig-dzp-src { color: #111 !important; }
html.ig-contrast .ig-dzp-tabs button { color: #111 !important; }
html.ig-contrast .ig-dzp-cmp th { color: #111 !important; }
html.ig-contrast .ig-dzp-cmp td a { color: #111 !important; }
html.ig-contrast .ig-dzp-rec__t { color: #111 !important; }
html.ig-contrast .ig-dzp-rec__v small { color: #111 !important; }
html.ig-contrast .ig-dzp-rec__n { color: #111 !important; }
html.ig-contrast .ig-dzp-faq summary { color: #111 !important; }
html.ig-contrast .ig-dzs-locbox figcaption { color: #111 !important; }
html.ig-contrast .ig-dzs-key li span { color: #111 !important; }
html.ig-contrast .ig-dzs-key li b { color: #111 !important; }
html.ig-contrast .ig-dzs-ch figcaption { color: #111 !important; }
html.ig-contrast .ig-dzs-row em { color: #111 !important; }
html.ig-contrast .ig-dzs-ch__n { color: #111 !important; }
html.ig-contrast .ig-dzs-nb li a { color: #111 !important; }
html.ig-contrast .ig-dzs-nb li a span { color: #111 !important; }
html.ig-contrast .ig-dzs-faq summary h3 { color: #111 !important; }
html.ig-contrast .ig-dzs-src p { color: #111 !important; }
html.ig-contrast .ig-dzs-fix p { color: #111 !important; }
html.ig-contrast .ig-dzs-toc__h { color: #111 !important; }
html.ig-contrast .ig-dzs-toc a { color: #111 !important; }
html.ig-contrast .ig-rk h3 { color: #111 !important; }
html.ig-contrast .ig-rk-hero__ph figcaption { color: #111 !important; }
html.ig-contrast .ig-rk-t th,
html.ig-contrast .ig-rk-t td { color: #111 !important; }
html.ig-contrast .ig-rk-t th { color: #111 !important; }
html.ig-contrast .ig-rk-note { color: #111 !important; }
html.ig-contrast .ig-rk-grp__d { color: #111 !important; }
html.ig-contrast .ig-rk-slot h4 { color: #111 !important; }
html.ig-contrast .ig-rk-slot__f { color: #111 !important; }
html.ig-contrast .ig-rk-faq summary { color: #111 !important; }
html.ig-contrast .ig-404__links a { color: #111 !important; }
html.ig-contrast .ig-dzp-cmp table[data-active="pop"] td[data-c="pop"] b,
html.ig-contrast .ig-dzp-cmp table[data-active="area"] td[data-c="area"] b,
html.ig-contrast .ig-dzp-cmp table[data-active="dens"] td[data-c="dens"] b { color: #111 !important; }
html.ig-contrast .ig-spa__pag .page-numbers { color: #111 !important; }
html.ig-contrast .ig-dzs-hero.is-map { color: #111 !important; }
html.ig-contrast .ig-dzs-hero.is-map .ig-crumbs { color: #111 !important; }
html.ig-contrast .ig-dzs-hero.is-map .ig-dzs-lead,
html.ig-contrast .ig-dzs-hero.is-map .ig-dzs-lead p { color: #111 !important; }
html.ig-contrast .ig-rec__card a { color: #111 !important; }
html.ig-contrast .ig-rec__lb { color: #111 !important; }
html.ig-contrast .ig-rec__title { color: #111 !important; }
html.ig-contrast .ig-rec__card time { color: #111 !important; }
html.ig-contrast .ig-pop a { color: #111 !important; }
html.ig-contrast body { color: #111 !important; }
html.ig-contrast .header .ig-menu-btn { color: #111 !important; }
html.ig-contrast .igm-hint { color: #111 !important; }
html.ig-contrast .igm-src { color: #111 !important; }
html.ig-contrast .igm-src a { color: #111 !important; }
html.ig-contrast .ig-entry table.ig-place-info th { color: #111 !important; }
html.ig-contrast .ig-gm-note { color: #111 !important; }
html.ig-contrast .ig-gm-foot { color: #111 !important; }
html.ig-contrast .ig-gm-legend { color: #111 !important; }
html.ig-contrast .ig-gm-list button.x { color: #111 !important; }
html.ig-contrast .ig-gm .maplibregl-popup-close-button { color: #111 !important; }
html.ig-contrast .ig-gm .maplibregl-popup-content small { color: #111 !important; }
