/* Wspólny motyw serwisu. Bootstrap 5.3 + komponenty treści kancelarii. */
:root {
	--site-ink: #203b43;
	--site-muted: #617275;
	--site-teal: #27665f;
	--site-teal-dark: #194c47;
	--site-canvas: #f6f5f1;
	--site-line: #dce2dd;
	--bs-body-font-family: "Segoe UI", Arial, sans-serif;
	--bs-body-color: #203b43;
	--bs-body-bg: #f6f5f1;
	--bs-link-color: #27665f;
	--bs-link-hover-color: #194c47;
	--bs-link-color-rgb: 39, 102, 95;
	--bs-link-hover-color-rgb: 25, 76, 71;
	--bs-border-color: #dce2dd;
}
body { margin: 0; font-size: 16px; line-height: 1.75; -webkit-font-smoothing: antialiased; }
* { box-sizing: border-box; }
img, svg, video { max-width: 100%; }
img { height: auto; }
a { text-underline-offset: .2em; }
a, button, input, select, textarea { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid #a77935; outline-offset: 4px; }
h1, h2, h3, h4, h5 { color: var(--site-ink); line-height: 1.25; text-wrap: balance; }
h1, h2 { font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
h2 { font-size: clamp(1.6rem, 3vw, 2.1rem); margin: 2rem 0 1rem; }
h3 { font-size: 1.3rem; margin: 1.75rem 0 .9rem; }
h4 { font-size: 1.1rem; margin: 1rem 0; }
#wrapper { max-width: 1320px; margin: auto; padding: 0 40px; min-height: 100vh; }
.site-header { padding: 28px 0; }
.site-brand { display: inline-flex; gap: 14px; align-items: center; color: var(--site-ink); text-decoration: none; font: 24px/1.2 Georgia,serif; }
.site-brand:hover { color: var(--site-teal); }
.brand-symbol { display: grid; place-items: center; width: 46px; height: 52px; border: 1px solid #a5b8b1; border-radius: 4px 4px 18px 4px; color: var(--site-teal); font-size: 37px; }
.site-brand small { display: block; font: 10px/1.4 "Segoe UI",sans-serif; letter-spacing: .18em; margin-top: 7px; }
:is(.btn, .generator-button, .button-kancelaria, .button, .button-zaplaty) { padding: .75rem 1.25rem; border-radius: 6px; font-weight: 600; font-size: .9rem; line-height: 1.5; white-space: normal; }
:is(.btn-primary, .generator-button, .button, .button-zaplaty) { --bs-btn-bg: #27665f; --bs-btn-border-color: #27665f; --bs-btn-hover-bg: #194c47; --bs-btn-hover-border-color: #194c47; --bs-btn-active-bg: #194c47; --bs-btn-active-border-color: #194c47; --bs-btn-disabled-bg: #27665f; }
:is(.btn-outline-primary, .button-kancelaria) { --bs-btn-color: #27665f; --bs-btn-border-color: #b0c3ba; --bs-btn-hover-bg: #27665f; --bs-btn-hover-border-color: #27665f; --bs-btn-active-bg: #194c47; --bs-btn-active-border-color: #194c47; }
.site-help span { margin-left: 15px; }
.site-navigation { border-top: 1px solid var(--site-line); border-bottom: 1px solid var(--site-line); padding: 8px 0; }
.site-navigation .nav { gap: 4px; justify-content: space-between; }
.site-navigation .nav-link { color: #4a5c5f; padding: 11px 14px; font-size: 14px; font-weight: 600; border-radius: 5px; }
.site-navigation .nav-link:hover, .site-navigation .nav-link.active { background: #e6ede7; color: #194c47; }
.menu-toggle { display: none; color: var(--site-ink); }
.menu-toggle span { padding-left: 15px; }
.skip-link { position: fixed; top: -100px; left: 12px; padding: 12px 20px; background: white; z-index: 10000; }
.skip-link:focus { top: 12px; }
.page-intro { max-width: 920px; margin: 0 auto; padding: 55px 0 38px; text-align: center; }
.eyebrow { color: var(--site-teal); letter-spacing: .17em; font-size: 10px; font-weight: 700; margin-bottom: 17px; }
:is(.page-heading, .font_h1) { font: 400 clamp(2rem, 4vw, 3.1rem)/1.15 Georgia,serif; margin: 0; }
.page-content { overflow-wrap: anywhere; }
.page-content::after { content: ""; display: block; clear: both; }
.site-main:not(.homepage-generator) > .page-content { background: #fff; border: 1px solid var(--site-line); border-radius: 12px; padding: clamp(22px, 4vw, 48px); }
.page-content > br, :is(.content-section, .box) > br:first-child { display: none; }
:is(.content-section, .box), .page-content main.box { width: 100%; margin: 0; padding: 0; background: transparent; }
:is(.content-spacing, .marginy, .marginy-kontakt, .div_box) { margin: 0; }
.page-content p { margin: 0 0 1.3rem; }
.page-content li { margin-bottom: .5rem; }
.page-content :is(.section-heading, .font_h2_another, .font_h3, .index-h2, .kancelaria, .FF) { font-size: clamp(1.4rem, 2.5vw, 1.9rem); margin: 1.7rem 0 1rem; }
:is(.text-accent, .text_green) { color: var(--site-teal); }
:is(.intro-copy, .text-index, .intro, .blog-p) { font-size: 1.1rem; color: #52666a; line-height: 1.85; }
:is(.article-card, .article-page) { max-width: 920px; margin: auto; }
:is(.article-banner, .article-img) { background: var(--site-ink); border-radius: 8px; padding: 30px; margin-bottom: 18px; }
:is(.article-banner, .article-img):empty { display: none; }
:is(.article-banner, .article-img) h4 { color: #fff; margin: 0; font: 25px/1.4 Georgia,serif; }
:is(.article-meta, .date-article-page) { padding: 0 0 20px; margin-bottom: 24px; border-bottom: 1px solid var(--site-line); color: var(--site-muted); font-size: 12px; }
:is(.article-meta, .date-article-page) i { margin-right: 6px; }
:is(.article-body, .text-article-blog, .atrykul_content) { max-width: 820px; margin: auto; line-height: 1.9; }
:is(.article-body, .text-article-blog, .atrykul_content) > br + br + br, .page-content br + br + br { display: none; }
:is(.article-bottom, .separe-down-article) { clear: both; border-top: 1px solid var(--site-line); padding-top: 24px; margin-top: 32px; }
:is(.article-back, .blog-next-article-page) a { display: inline-block; font-size: 14px; font-weight: 600; }
:is(.article-back, .blog-next-article-page) i { margin-right: 8px; }
#img_format_right { float: right; width: min(24%, 160px); margin: 0 0 24px 30px; }
:is(.legal-note, .my_blockquote_paragraf), :is(.help-note, .my_blockquote_bulb, .my_blockquote, .box-call), :is(.contents-panel, .bg_spis, .navbar-default), :is(.content-panel, .fieldset, .frame) { position: relative; margin: 26px 0; padding: 24px 28px; border: 1px solid var(--site-line); border-radius: 6px; background: #f1f5f0; color: var(--site-ink); }
:is(.legal-note, .my_blockquote_paragraf) { border-left: 3px solid var(--site-teal); }
:is(.help-note, .my_blockquote_bulb, .my_blockquote, .box-call) { border-left: 3px solid #a77935; background: #faf6ed; }
:is(.note-icon, .paragraf-png, .bulb-png) { float: right; width: 24px; margin: 0 0 10px 16px; opacity: .65; }
:is(.content-panel, .fieldset, .frame) { background: #fff; }
:is(.resource-list, .blogList, .punctor) { margin: 20px 0; }
:is(.resource-list, .blogList, .punctor) li { padding: 7px 0; }
:is(.resource-links, .linki-margin) { line-height: 2.4; margin-bottom: 22px; }
:is(.resource-links, .linki-margin) i { margin-right: 10px; color: #769b8c; }
:is(.feature-column, .box-right, .box-left, .con-1-wzor, .con-1-wym2, .con-1-wymagalnosc) { display: inline-block; vertical-align: top; width: calc(50% - 14px); margin: 0 7px 28px 0; }
:is(.feature-column, .box-right, .box-left, .con-1-wzor, .con-1-wym2, .con-1-wymagalnosc) > img { display: block; max-height: 420px; width: auto; margin: auto; object-fit: contain; }
:is(.download-card, .box-doku-wzor, .box-doku-wym2, .box-doku-wymagalnosc) { display: inline-block; vertical-align: top; width: calc(33.333% - 14px); margin: 0 7px 24px 0; padding: 24px; background: #f6f7f3; border: 1px solid var(--site-line); border-radius: 8px; }
:is(.download-card, .box-doku-wzor, .box-doku-wym2, .box-doku-wymagalnosc) > br { display: none; }
:is(.download-card, .box-doku-wzor, .box-doku-wym2, .box-doku-wymagalnosc) h4 { margin: 0 0 16px; min-height: 44px; font-size: 17px; }
:is(.download-link, .doku-icon) { padding: 12px 0; border-top: 1px solid var(--site-line); font-size: 14px; }
:is(.download-link, .doku-icon) img { width: 20px; margin-right: 5px; }
:is(.content-tags, .tags) { clear: both; font-size: 12px; color: var(--site-muted); padding-top: 24px; border-top: 1px solid var(--site-line); }
:is(.action-group, .box-button, .box-button-center, .button-kan-center) { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 12px; margin: 24px 0; }
#button-kan-cen { border: 0; color: var(--site-muted); background: transparent; }
:is(.about-intro, .kancelaria-tresc) { max-width: 850px; margin: auto; }
:is(.about-intro, .kancelaria-tresc) p > img { float: right; width: 120px; margin: 0 0 24px 30px; }
:is(.about-services, .firmowe-finanse) { margin-top: 40px; }
:is(.service-grid, .sprawy-box-center) { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
:is(.service-card, .sprawy-box) { padding: 22px; border: 1px solid var(--site-line); border-radius: 7px; background: #f5f7f3; font-size: 15px; }
:is(.benefit-item, .what_we-do) { padding: 12px 0; }
:is(.document-image, .img_wezwanie) { display: block; max-height: 480px; margin: auto; }
:is(.post-grid, .blog-box-container), #blog:has(> :is(.post-card, .blog-box)) { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
:is(.post-grid, .blog-box-container) > :not(:is(.post-card, .blog-box)), #blog:has(> :is(.post-card, .blog-box)) > :not(:is(.post-card, .blog-box)) { grid-column: 1 / -1; }
:is(.post-grid, .blog-box-container) > br, #blog:has(> :is(.post-card, .blog-box)) > br { display: none; }
:is(.post-card, .blog-box) { min-width: 0; border: 1px solid var(--site-line); border-radius: 8px; overflow: hidden; background: #fff; transition: box-shadow .2s; }
:is(.post-card, .blog-box):hover { box-shadow: 0 8px 26px #203b4312; }
:is(.post-cover, .blog-img) { position: relative; }
:is(.post-cover, .blog-img) img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
:is(.post-date, .data) { position: absolute; bottom: 0; right: 0; padding: 5px 12px; font-size: 11px; color: white; background: #203b43; }
:is(.post-card, .blog-box) h4 { margin: 0; padding: 20px; font: 18px/1.45 Georgia,serif; }
:is(.post-card, .blog-box) a { text-decoration: none; color: var(--site-ink); }
:is(.post-card, .blog-box) a:hover { color: var(--site-teal); text-decoration: underline; }
:is(.contact-form-panel, .contact-form) { max-width: 720px; padding: 28px; margin: 0 auto 40px; background: #f5f7f3; border: 1px solid var(--site-line); border-radius: 8px; }
:is(.form-control, .kontakt), .form-select, #comment-content { border-color: #bdcbc4; border-radius: 5px; min-height: 46px; padding: 10px 14px; background: white; color: var(--site-ink); }
:is(.form-control, .kontakt):focus { border-color: var(--site-teal); box-shadow: 0 0 0 .2rem #27665f22; }
#comment-content { display: block; width: 100%; min-height: 150px; }
#send-message { display: block; border: 1px solid var(--site-teal); background: var(--site-teal); color: white; border-radius: 6px; padding: 12px 24px; margin-top: 24px; }
:is(.contact-layout, .contact-c) { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
:is(.contact-map, .mapa) iframe { width: 100%; border-radius: 8px; }
:is(.contact-data, .dane-kontaktowe) { font-size: 15px; }
.page-content table { display: block; max-width: 100%; overflow-x: auto; margin: 24px 0; border-collapse: collapse; font-size: 14px; }
.page-content th, .page-content td { padding: 12px 16px; border: 1px solid var(--site-line); }
:is(.table-heading, .td-bg-color), .page-content th { background: #e8efea; color: var(--site-ink); font-weight: 600; }
.page-content iframe { max-width: 100%; }
.page-content form[name="ankieta"] > div { margin: 24px 0 !important; text-align: right; }
.page-content form[name="ankieta"] textarea { width: 100%; min-width: 180px; max-width: 100%; margin: 0 !important; border: 1px solid var(--site-line); border-radius: 5px; padding: 12px; }
.page-content form[name="ankieta"] fieldset { min-width: 160px; }
.site-footer { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 32px 0; margin-top: 40px; border-top: 1px solid var(--site-line); color: var(--site-muted); font-size: 12px; }
.site-footer strong { display: block; color: var(--site-ink); font: 18px Georgia,serif; margin-bottom: 7px; }
.site-footer p { margin: 0; }
.homepage-generator .page-intro { padding-bottom: 10px; }
.homepage-generator .page-intro .eyebrow { margin-bottom: 12px; }
@media (max-width: 991px) {
	#wrapper { padding: 0 22px; }
	.site-navigation.is-enhanced .menu-toggle { display: block; margin-left: auto; }
	.site-navigation.is-enhanced .nav:not(.is-open) { display: none; }
	.site-navigation .nav { flex-direction: column; padding: 8px 0; }
	:is(.post-grid, .blog-box-container), #blog:has(> :is(.post-card, .blog-box)), :is(.service-grid, .sprawy-box-center) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	:is(.download-card, .box-doku-wzor, .box-doku-wym2, .box-doku-wymagalnosc) { width: calc(50% - 14px); }
	.site-footer { align-items: start; flex-direction: column; gap: 16px; }
}
@media (max-width: 575px) {
	body { font-size: 15px; }
	#wrapper { padding: 0 16px; }
	.site-header { padding: 20px 0; }
	.site-header-inner { flex-wrap: wrap; }
	.site-brand { font-size: 21px; }
	.site-help { padding: 8px 12px; font-size: 12px; }
	.brand-symbol { width: 38px; height: 44px; font-size: 30px; }
	.page-intro { padding: 32px 0 24px; }
	:is(.page-heading, .font_h1) { font-size: 30px; }
	.eyebrow { font-size: 9px; letter-spacing: .1em; }
	:is(.post-grid, .blog-box-container), #blog:has(> :is(.post-card, .blog-box)), :is(.service-grid, .sprawy-box-center), :is(.contact-layout, .contact-c) { grid-template-columns: 1fr; }
	:is(.download-card, .box-doku-wzor, .box-doku-wym2, .box-doku-wymagalnosc), :is(.feature-column, .box-right, .box-left, .con-1-wzor, .con-1-wym2, .con-1-wymagalnosc) { display: block; width: 100%; margin-right: 0; }
	:is(.legal-note, .my_blockquote_paragraf), :is(.help-note, .my_blockquote_bulb, .my_blockquote, .box-call), :is(.contents-panel, .bg_spis, .navbar-default), :is(.content-panel, .fieldset, .frame) { padding: 20px; }
	#img_format_right { width: 85px; margin-left: 16px; }
	:is(.contact-form-panel, .contact-form) { padding: 16px; }
	.g-recaptcha { max-width: 100%; overflow-x: auto; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
@media print {
	body { background: white; color: black; }
	.site-header, .site-navigation, .site-footer, .skip-link { display: none; }
	#wrapper { max-width: none; padding: 0; }
	.site-main:not(.homepage-generator) > .page-content { border: 0; padding: 0; }
	.page-intro { padding: 16px 0; }
}

/* Proste klasy kompatybilnosci starej tresci. */
.paragraf-png-down,.bulb-png-down{display:none}.clear{clear:both}.italic{font-style:italic}.justify{text-align:left}.top_5{margin-top:.5rem}.wciecie{padding-left:1rem}.field{margin-bottom:1rem}.marginy2{margin:1.5rem 0}.marginy3{margin:3rem 0}.center-box{text-align:center}
