<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Archiwa strefa brzegowa podłogówki - Projekt Ogrzewania</title>
	<atom:link href="https://projekt-ogrzewania.pl/tag/strefa-brzegowa-podlogowki/feed/" rel="self" type="application/rss+xml" />
	<link>https://projekt-ogrzewania.pl/tag/strefa-brzegowa-podlogowki/</link>
	<description>Ogrzewanie podłogowe i systemy HVAC oparte na obliczeniach.</description>
	<lastBuildDate>Wed, 16 Sep 2026 06:20:53 +0000</lastBuildDate>
	<language>pl-PL</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.4</generator>

<image>
	<url>https://projekt-ogrzewania.pl/wp-content/uploads/2026/10/Projekt-Ogrzewania-favicon-512-100x100.webp</url>
	<title>Archiwa strefa brzegowa podłogówki - Projekt Ogrzewania</title>
	<link>https://projekt-ogrzewania.pl/tag/strefa-brzegowa-podlogowki/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Projekt ogrzewania podłogowego online.</title>
		<link>https://projekt-ogrzewania.pl/projekt-ogrzewania-podlogowego-online/</link>
		
		<dc:creator><![CDATA[Robert Kucharski]]></dc:creator>
		<pubDate>Sun, 02 Aug 2026 16:05:21 +0000</pubDate>
				<category><![CDATA[Cennik]]></category>
		<category><![CDATA[Hydraulika]]></category>
		<category><![CDATA[Instalacje hydrauliczne]]></category>
		<category><![CDATA[Koszty ogrzewania]]></category>
		<category><![CDATA[Ogrzewanie płaszczyznowe]]></category>
		<category><![CDATA[Ogrzewanie podłogowe]]></category>
		<category><![CDATA[Poradnik inwestora]]></category>
		<category><![CDATA[Poradniki dla inwestorów]]></category>
		<category><![CDATA[Poradniki inwestora]]></category>
		<category><![CDATA[Projekt ogrzewania podłogowego]]></category>
		<category><![CDATA[Projekty ogrzewania]]></category>
		<category><![CDATA[bilans hydrauliczny]]></category>
		<category><![CDATA[dylatacje jastrychu]]></category>
		<category><![CDATA[grubość wylewki betonowej]]></category>
		<category><![CDATA[kaucja za projekt]]></category>
		<category><![CDATA[nastawy rotametrów]]></category>
		<category><![CDATA[obliczenia ozc]]></category>
		<category><![CDATA[pn-en 1264]]></category>
		<category><![CDATA[pn-en 12831]]></category>
		<category><![CDATA[pompa ciepła podłogówka]]></category>
		<category><![CDATA[projekt ogrzewania podłogowego online]]></category>
		<category><![CDATA[projektowanie hvac online]]></category>
		<category><![CDATA[rozdzielacz do podłogówki]]></category>
		<category><![CDATA[rozstaw rur podłogówki]]></category>
		<category><![CDATA[rura pex pert]]></category>
		<category><![CDATA[strefa brzegowa podłogówki]]></category>
		<guid isPermaLink="false">https://projekt-ogrzewania.pl/?p=6999</guid>

					<description><![CDATA[<p>Planujesz budowę domu i zastanawiasz się, jak uniknąć błędów wykonawczych przy układaniu instalacji płaszczyznowej? Profesjonalny projekt ogrzewania podłogowego online to fundament nowoczesnego, energooszczędnego budownictwa, który zabezpiecza pompę ciepła lub kocioł przed awariami i redukuje rachunki za prąd. Zamiast ryzykować układanie rur „z metra” przez ekipy monterskie, postaw na precyzyjne obliczenia obciążenia cieplnego (OZC) oraz bilans hydrauliczny na zaworach rozdzielacza. Z naszego inżynieryjnego przewodnika dowiesz się, jak przebiega cyfrowe projektowanie, ile wynoszą rzeczywiste koszty dokumentacji i jak odzyskać 100% wydanej kwoty dzięki unikalnemu systemowi kaucji zwrotnej.</p>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/projekt-ogrzewania-podlogowego-online/">Projekt ogrzewania podłogowego online.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<style>
  #rk-projekt-online {
    --rk-dark: #102536;
    --rk-navy: #14384d;
    --rk-blue: #078fbe;
    --rk-cyan: #28c9da;
    --rk-cyan-soft: #eafcff;
    --rk-orange: #ff7438;
    --rk-red: #e33d35;
    --rk-green: #169c68;
    --rk-green-soft: #eafaf3;
    --rk-ink: #1f2937;
    --rk-text: #465866;
    --rk-muted: #687986;
    --rk-line: #dce8ee;
    --rk-soft: #f5f9fb;
    --rk-warm: #fff4ed;
    --rk-white: #ffffff;
    width: 100%;
    max-width: 1080px;
    margin: 34px auto 70px;
    color: var(--rk-ink);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 18px;
    line-height: 1.78;
  }

  #rk-projekt-online,
  #rk-projekt-online * {
    box-sizing: border-box;
  }

  #rk-projekt-online [hidden] {
    display: none !important;
  }

  #rk-projekt-online img {
    max-width: 100%;
    height: auto;
  }

  #rk-projekt-online button,
  #rk-projekt-online a {
    -webkit-tap-highlight-color: transparent;
  }

  #rk-projekt-online a {
    color: var(--rk-blue);
    font-weight: 760;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
  }

  #rk-projekt-online a:hover {
    color: var(--rk-red);
  }

  #rk-projekt-online .rk-online-shell {
    overflow: hidden;
    border: 1px solid var(--rk-line);
    border-radius: 30px;
    background: var(--rk-white);
    box-shadow: 0 25px 70px rgba(16, 37, 54, 0.12);
  }

  #rk-projekt-online .rk-online-progress-track {
    position: sticky;
    z-index: 30;
    top: 0;
    width: 100%;
    height: 5px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.86);
  }

  #rk-projekt-online .rk-online-progress {
    width: 0;
    height: 100%;
    background: linear-gradient(90deg, var(--rk-cyan), var(--rk-blue), var(--rk-orange), var(--rk-red));
  }

  #rk-projekt-online h2,
  #rk-projekt-online h3,
  #rk-projekt-online h4 {
    margin-top: 0;
    color: var(--rk-dark);
    font-weight: 900;
    letter-spacing: -0.035em;
    line-height: 1.18;
  }

  #rk-projekt-online h2 {
    margin-bottom: 18px;
    font-size: clamp(1.65rem, 3.7vw, 2.6rem);
  }

  #rk-projekt-online h3 {
    margin-bottom: 12px;
    font-size: clamp(1.22rem, 2.6vw, 1.65rem);
  }

  #rk-projekt-online h4 {
    margin-bottom: 8px;
    font-size: 1.03rem;
    letter-spacing: -0.015em;
  }

  #rk-projekt-online p {
    margin: 0 0 1.25em;
    color: var(--rk-text);
  }

  #rk-projekt-online strong {
    color: var(--rk-dark);
  }

  #rk-projekt-online .rk-online-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(38px, 6.5vw, 78px);
    color: var(--rk-white);
    background:
      radial-gradient(circle at 88% 12%, rgba(255, 116, 56, 0.35), transparent 27%),
      radial-gradient(circle at 82% 78%, rgba(40, 201, 218, 0.24), transparent 31%),
      linear-gradient(135deg, #0d2230 0%, #143b50 58%, #095e78 100%);
  }

  #rk-projekt-online .rk-online-hero::before,
  #rk-projekt-online .rk-online-hero::after {
    content: "";
    position: absolute;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
  }

  #rk-projekt-online .rk-online-hero::before {
    right: -115px;
    bottom: -170px;
    width: 390px;
    height: 390px;
    border: 58px solid rgba(255, 255, 255, 0.055);
  }

  #rk-projekt-online .rk-online-hero::after {
    right: 115px;
    bottom: -130px;
    width: 230px;
    height: 230px;
    border: 34px solid rgba(255, 116, 56, 0.11);
  }

  #rk-projekt-online .rk-online-badge {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    margin: 0 0 24px;
    padding: 8px 15px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 999px;
    color: var(--rk-white);
    background: rgba(255, 255, 255, 0.08);
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    line-height: 1.35;
    text-transform: uppercase;
  }

  #rk-projekt-online .rk-online-badge::before {
    content: "";
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-radius: 50%;
    background: var(--rk-orange);
    box-shadow: 0 0 0 6px rgba(255, 116, 56, 0.18);
  }

  #rk-projekt-online .rk-online-hero h2 {
    max-width: 900px;
    margin-bottom: 24px;
    color: var(--rk-white);
    font-size: clamp(2rem, 5.4vw, 4rem);
    letter-spacing: -0.055em;
  }

  #rk-projekt-online .rk-online-hero h2 span {
    color: #84edf5;
  }

  #rk-projekt-online .rk-online-hook {
    max-width: 900px;
    margin: 0 0 26px;
    padding: clamp(20px, 3.6vw, 30px);
    border: 1px solid rgba(255, 255, 255, 0.17);
    border-left: 5px solid var(--rk-orange);
    border-radius: 0 18px 18px 0;
    background: rgba(255, 255, 255, 0.09);
    backdrop-filter: blur(6px);
  }

  #rk-projekt-online .rk-online-hook p {
    margin: 0;
    color: #f3f8fa;
    font-size: clamp(1.03rem, 2.1vw, 1.25rem);
    font-weight: 620;
    line-height: 1.72;
  }

  #rk-projekt-online .rk-online-hook strong {
    color: var(--rk-white);
  }

  #rk-projekt-online .rk-online-hero-lead {
    max-width: 880px;
    margin-bottom: 0;
    color: #dcecf1;
    font-size: clamp(1rem, 2vw, 1.16rem);
  }

  #rk-projekt-online .rk-online-hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 9px 18px;
    margin-top: 28px;
    color: #c9e0e7;
    font-size: 0.82rem;
    font-weight: 750;
  }

  #rk-projekt-online .rk-online-hero-meta span {
    display: inline-flex;
    gap: 8px;
    align-items: center;
  }

  #rk-projekt-online .rk-online-hero-meta span::before {
    content: "";
    width: 6px;
    height: 6px;
    flex: 0 0 6px;
    border-radius: 50%;
    background: var(--rk-cyan);
  }

  #rk-projekt-online .rk-online-author-strip {
    display: flex;
    gap: 15px;
    align-items: center;
    max-width: 790px;
    margin-top: 30px;
    padding-top: 24px;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
  }

  #rk-projekt-online .rk-online-author-strip img {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    object-fit: cover;
    border: 3px solid rgba(255, 255, 255, 0.92);
    border-radius: 50%;
  }

  #rk-projekt-online .rk-online-author-strip b,
  #rk-projekt-online .rk-online-author-strip small {
    display: block;
  }

  #rk-projekt-online .rk-online-author-strip b {
    color: var(--rk-white);
    font-size: 0.94rem;
  }

  #rk-projekt-online .rk-online-author-strip small {
    margin-top: 2px;
    color: #c9dbe1;
    font-size: 0.75rem;
    font-weight: 650;
    line-height: 1.45;
  }

  #rk-projekt-online .rk-online-content {
    padding: clamp(28px, 5.7vw, 68px);
  }

  #rk-projekt-online .rk-online-answer {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(220px, 0.65fr);
    gap: 22px;
    margin: 0 0 38px;
    padding: clamp(24px, 4vw, 38px);
    border: 1px solid #bfe8ee;
    border-radius: 24px;
    background: linear-gradient(135deg, #f9feff, #eafaff);
  }

  #rk-projekt-online .rk-online-answer-label {
    display: block;
    margin-bottom: 9px;
    color: var(--rk-blue);
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  #rk-projekt-online .rk-online-answer-main {
    display: block;
    font-size: clamp(1.27rem, 3vw, 2rem);
    letter-spacing: -0.035em;
    line-height: 1.28;
  }

  #rk-projekt-online .rk-online-answer p {
    margin: 13px 0 0;
  }

  #rk-projekt-online .rk-online-answer-badge {
    display: grid;
    align-content: center;
    padding: 22px;
    border-radius: 20px;
    color: var(--rk-white);
    background: linear-gradient(145deg, var(--rk-green), #087e58);
    text-align: center;
    box-shadow: 0 16px 34px rgba(22, 156, 104, 0.2);
  }

  #rk-projekt-online .rk-online-answer-badge b,
  #rk-projekt-online .rk-online-answer-badge span {
    color: var(--rk-white);
  }

  #rk-projekt-online .rk-online-answer-badge b {
    display: block;
    font-size: 2.25rem;
    letter-spacing: -0.05em;
    line-height: 1;
  }

  #rk-projekt-online .rk-online-answer-badge span {
    display: block;
    margin-top: 9px;
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1.45;
  }

  #rk-projekt-online .rk-online-learn {
    margin: 0 0 42px;
  }

  #rk-projekt-online .rk-online-learn-title {
    display: flex;
    gap: 11px;
    align-items: center;
    margin-bottom: 20px;
    font-size: 1.18rem;
  }

  #rk-projekt-online .rk-online-learn-title svg {
    flex: 0 0 25px;
    color: var(--rk-orange);
  }

  #rk-projekt-online .rk-online-learn-grid,
  #rk-projekt-online .rk-online-process-grid,
  #rk-projekt-online .rk-online-scope-grid,
  #rk-projekt-online .rk-online-material-grid,
  #rk-projekt-online .rk-online-program-grid,
  #rk-projekt-online .rk-online-bio-stats {
    display: grid;
    gap: 16px;
  }

  #rk-projekt-online .rk-online-learn-grid,
  #rk-projekt-online .rk-online-program-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #rk-projekt-online .rk-online-learn-card {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 21px;
    border: 1px solid #bfe9ef;
    border-radius: 18px;
    background: linear-gradient(145deg, #f8feff, var(--rk-cyan-soft));
  }

  #rk-projekt-online .rk-online-learn-icon {
    display: grid;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    place-items: center;
    border-radius: 13px;
    color: var(--rk-white);
    background: linear-gradient(145deg, var(--rk-blue), var(--rk-cyan));
    box-shadow: 0 10px 22px rgba(7, 143, 190, 0.18);
    font-size: 0.78rem;
    font-weight: 900;
  }

  #rk-projekt-online .rk-online-learn-card p {
    margin: 0;
    font-size: 0.86rem;
    line-height: 1.6;
  }

  #rk-projekt-online .rk-online-nav {
    margin: 0 0 48px;
    padding: 22px;
    border: 1px solid var(--rk-line);
    border-radius: 20px;
    background: var(--rk-soft);
  }

  #rk-projekt-online .rk-online-nav strong {
    display: block;
    margin-bottom: 13px;
    font-size: 0.82rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  #rk-projekt-online .rk-online-nav-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }

  #rk-projekt-online .rk-online-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 7px 12px;
    border: 1px solid #ccdde5;
    border-radius: 999px;
    color: var(--rk-navy);
    background: var(--rk-white);
    font-size: 0.77rem;
    font-weight: 800;
    line-height: 1.25;
    text-decoration: none;
  }

  #rk-projekt-online .rk-online-nav a:hover {
    color: var(--rk-white);
    border-color: var(--rk-blue);
    background: var(--rk-blue);
  }

  #rk-projekt-online .rk-online-section {
    margin: 0 0 64px;
    scroll-margin-top: 24px;
  }

  #rk-projekt-online .rk-online-section-head {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
    margin-bottom: 24px;
  }

  #rk-projekt-online .rk-online-section-no {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 16px;
    color: var(--rk-white);
    background: linear-gradient(145deg, var(--rk-dark), var(--rk-navy));
    font-weight: 900;
    line-height: 1;
    box-shadow: inset 0 -4px 0 rgba(40, 201, 218, 0.55);
  }

  #rk-projekt-online .rk-online-section-head h2 {
    margin-bottom: 7px;
  }

  #rk-projekt-online .rk-online-section-head p {
    margin: 0;
  }

  #rk-projekt-online .rk-online-note,
  #rk-projekt-online .rk-online-warning,
  #rk-projekt-online .rk-online-truth {
    margin: 25px 0;
    padding: 22px 24px;
    border-radius: 18px;
  }

  #rk-projekt-online .rk-online-note {
    border-left: 5px solid var(--rk-blue);
    background: var(--rk-cyan-soft);
  }

  #rk-projekt-online .rk-online-warning {
    border: 1px solid #f2c7ad;
    background: var(--rk-warm);
  }

  #rk-projekt-online .rk-online-truth {
    color: #edf7fa;
    background:
      radial-gradient(circle at 94% 8%, rgba(40, 201, 218, 0.18), transparent 31%),
      linear-gradient(135deg, var(--rk-dark), #24485c);
  }

  #rk-projekt-online .rk-online-truth p,
  #rk-projekt-online .rk-online-truth strong {
    color: var(--rk-white);
  }

  #rk-projekt-online .rk-online-truth p:last-child,
  #rk-projekt-online .rk-online-note p:last-child,
  #rk-projekt-online .rk-online-warning p:last-child {
    margin-bottom: 0;
  }

  #rk-projekt-online .rk-online-process-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 26px 0 30px;
  }

  #rk-projekt-online .rk-online-process-card {
    position: relative;
    min-width: 0;
    padding: 24px 20px 22px;
    border: 1px solid var(--rk-line);
    border-radius: 19px;
    background: var(--rk-white);
    box-shadow: 0 10px 28px rgba(16, 37, 54, 0.065);
  }

  #rk-projekt-online .rk-online-process-card::after {
    content: "→";
    position: absolute;
    z-index: 2;
    top: 31px;
    right: -14px;
    color: var(--rk-orange);
    font-size: 1.25rem;
    font-weight: 900;
  }

  #rk-projekt-online .rk-online-process-card:last-child::after {
    display: none;
  }

  #rk-projekt-online .rk-online-process-no {
    display: inline-grid;
    width: 38px;
    height: 38px;
    place-items: center;
    margin-bottom: 15px;
    border-radius: 11px;
    color: var(--rk-white);
    background: linear-gradient(145deg, var(--rk-orange), var(--rk-red));
    font-size: 0.78rem;
    font-weight: 900;
  }

  #rk-projekt-online .rk-online-process-card p {
    margin: 0;
    font-size: 0.82rem;
    line-height: 1.62;
  }

  #rk-projekt-online .rk-online-scope-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 26px 0 30px;
  }

  #rk-projekt-online .rk-online-scope-card {
    min-width: 0;
    padding: 23px;
    border: 1px solid var(--rk-line);
    border-radius: 19px;
    background: var(--rk-white);
  }

  #rk-projekt-online .rk-online-scope-icon {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    margin-bottom: 14px;
    border-radius: 12px;
    color: var(--rk-white);
    background: linear-gradient(145deg, var(--rk-blue), var(--rk-cyan));
    font-size: 0.72rem;
    font-weight: 900;
  }

  #rk-projekt-online .rk-online-scope-card p {
    margin: 0;
    font-size: 0.82rem;
    line-height: 1.62;
  }

  #rk-projekt-online .rk-online-material-box {
    margin: 27px 0 32px;
    padding: clamp(24px, 4vw, 38px);
    border: 1px solid #c8e8d9;
    border-radius: 24px;
    background: linear-gradient(145deg, #fbfffd, var(--rk-green-soft));
  }

  #rk-projekt-online .rk-online-material-box h3 {
    margin-bottom: 8px;
  }

  #rk-projekt-online .rk-online-material-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 22px;
  }

  #rk-projekt-online .rk-online-material-card {
    min-width: 0;
    padding: 18px 16px;
    border: 1px solid rgba(22, 156, 104, 0.22);
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.82);
  }

  #rk-projekt-online .rk-online-material-card b {
    display: block;
    margin-bottom: 5px;
    color: #0d7d56;
    font-size: 0.86rem;
  }

  #rk-projekt-online .rk-online-material-card span {
    display: block;
    color: var(--rk-muted);
    font-size: 0.73rem;
    font-weight: 680;
    line-height: 1.5;
  }

  #rk-projekt-online .rk-online-table-wrap {
    width: 100%;
    margin: 25px 0 31px;
    overflow-x: auto;
    border: 1px solid var(--rk-line);
    border-radius: 18px;
  }

  #rk-projekt-online table {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
    background: var(--rk-white);
    font-size: 0.83rem;
    line-height: 1.52;
  }

  #rk-projekt-online th,
  #rk-projekt-online td {
    padding: 14px 15px;
    border-bottom: 1px solid var(--rk-line);
    color: var(--rk-text);
    text-align: left;
    vertical-align: top;
  }

  #rk-projekt-online th {
    color: var(--rk-white);
    background: var(--rk-dark);
    font-weight: 850;
  }

  #rk-projekt-online tbody tr:nth-child(even) td {
    background: #f8fbfc;
  }

  #rk-projekt-online tbody tr:last-child td,
  #rk-projekt-online tbody tr:last-child th {
    border-bottom: 0;
  }

  #rk-projekt-online .rk-online-list {
    margin: 20px 0 28px;
    padding: 0;
    list-style: none;
  }

  #rk-projekt-online .rk-online-list li {
    position: relative;
    margin: 0 0 12px;
    padding-left: 31px;
    color: var(--rk-text);
  }

  #rk-projekt-online .rk-online-list li::before {
    content: "";
    position: absolute;
    top: 0.63em;
    left: 3px;
    width: 12px;
    height: 7px;
    transform: rotate(-45deg);
    border-bottom: 3px solid var(--rk-blue);
    border-left: 3px solid var(--rk-blue);
  }

  #rk-projekt-online .rk-online-program-card {
    padding: 25px;
    border: 1px solid var(--rk-line);
    border-radius: 19px;
    background: var(--rk-white);
  }

  #rk-projekt-online .rk-online-program-card:first-child {
    border-top: 5px solid var(--rk-orange);
  }

  #rk-projekt-online .rk-online-program-card:last-child {
    border-top: 5px solid var(--rk-green);
    background: #fbfffd;
  }

  #rk-projekt-online .rk-online-program-card p:last-child {
    margin-bottom: 0;
  }

  #rk-projekt-online .rk-online-cta {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin: 38px 0 64px;
    padding: clamp(28px, 5vw, 48px);
    border-radius: 25px;
    color: var(--rk-white);
    background:
      radial-gradient(circle at 92% 18%, rgba(255, 116, 56, 0.38), transparent 28%),
      linear-gradient(135deg, #102536, #095d79);
    box-shadow: 0 20px 48px rgba(16, 37, 54, 0.18);
  }

  #rk-projekt-online .rk-online-cta::after {
    content: "";
    position: absolute;
    z-index: -1;
    right: -90px;
    bottom: -120px;
    width: 270px;
    height: 270px;
    border: 40px solid rgba(255, 255, 255, 0.07);
    border-radius: 50%;
  }

  #rk-projekt-online .rk-online-cta-label {
    display: inline-block;
    margin-bottom: 12px;
    color: #8cf2f8;
    font-size: 0.73rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  #rk-projekt-online .rk-online-cta h2,
  #rk-projekt-online .rk-online-cta p,
  #rk-projekt-online .rk-online-cta strong {
    color: var(--rk-white);
  }

  #rk-projekt-online .rk-online-cta h2 {
    max-width: 800px;
    margin-bottom: 14px;
  }

  #rk-projekt-online .rk-online-cta p {
    max-width: 820px;
  }

  #rk-projekt-online .rk-online-cta-points {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin: 22px 0 25px;
  }

  #rk-projekt-online .rk-online-cta-points span {
    display: inline-flex;
    align-items: center;
    min-height: 35px;
    padding: 6px 11px;
    border: 1px solid rgba(255, 255, 255, 0.19);
    border-radius: 999px;
    color: #ecf8fa;
    background: rgba(255, 255, 255, 0.08);
    font-size: 0.73rem;
    font-weight: 780;
  }

  #rk-projekt-online .rk-online-cta-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
  }

  #rk-projekt-online .rk-online-cta-button,
  #rk-projekt-online .rk-online-cta-secondary {
    display: inline-flex;
    gap: 9px;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 12px 20px;
    border-radius: 13px;
    font-size: 0.9rem;
    font-weight: 900;
    line-height: 1.25;
    text-decoration: none;
    transition: transform 0.18s ease, box-shadow 0.18s ease;
  }

  #rk-projekt-online .rk-online-cta-button {
    color: var(--rk-white);
    background: linear-gradient(145deg, var(--rk-orange), var(--rk-red));
    box-shadow: 0 12px 28px rgba(227, 61, 53, 0.28);
  }

  #rk-projekt-online .rk-online-cta-button::after {
    content: "→";
    font-size: 1.1rem;
  }

  #rk-projekt-online .rk-online-cta-secondary {
    color: var(--rk-white);
    border: 1px solid rgba(255, 255, 255, 0.3);
    background: rgba(255, 255, 255, 0.08);
  }

  #rk-projekt-online .rk-online-cta-button:hover,
  #rk-projekt-online .rk-online-cta-secondary:hover {
    color: var(--rk-white);
    transform: translateY(-2px);
  }

  #rk-projekt-online .rk-online-cta-button:hover {
    box-shadow: 0 16px 34px rgba(227, 61, 53, 0.36);
  }

  #rk-projekt-online .rk-online-faq {
    display: grid;
    gap: 12px;
  }

  #rk-projekt-online .rk-online-faq details {
    border: 1px solid var(--rk-line);
    border-radius: 17px;
    background: var(--rk-white);
  }

  #rk-projekt-online .rk-online-faq details[open] {
    border-color: #abdce5;
    box-shadow: 0 10px 26px rgba(16, 37, 54, 0.065);
  }

  #rk-projekt-online .rk-online-faq summary {
    position: relative;
    padding: 18px 54px 18px 20px;
    color: var(--rk-dark);
    cursor: pointer;
    font-weight: 850;
    line-height: 1.45;
    list-style: none;
  }

  #rk-projekt-online .rk-online-faq summary::-webkit-details-marker {
    display: none;
  }

  #rk-projekt-online .rk-online-faq summary::after {
    content: "+";
    position: absolute;
    top: 50%;
    right: 18px;
    display: grid;
    width: 29px;
    height: 29px;
    transform: translateY(-50%);
    place-items: center;
    border-radius: 9px;
    color: var(--rk-white);
    background: var(--rk-blue);
    font-size: 1.1rem;
    line-height: 1;
  }

  #rk-projekt-online .rk-online-faq details[open] summary::after {
    content: "−";
    background: var(--rk-orange);
  }

  #rk-projekt-online .rk-online-faq details p {
    margin: 0;
    padding: 0 20px 20px;
  }

  #rk-projekt-online .rk-online-summary {
    margin: 5px 0 34px;
    padding: clamp(28px, 4.7vw, 44px);
    border-radius: 24px;
    color: #eef8fa;
    background:
      radial-gradient(circle at 90% 15%, rgba(255, 116, 56, 0.25), transparent 31%),
      linear-gradient(135deg, #0f2534, #224b60);
  }

  #rk-projekt-online .rk-online-summary h2,
  #rk-projekt-online .rk-online-summary p,
  #rk-projekt-online .rk-online-summary strong {
    color: var(--rk-white);
  }

  #rk-projekt-online .rk-online-summary p:last-child {
    margin-bottom: 0;
  }

  #rk-projekt-online .rk-online-conditions {
    margin: 33px 0;
    padding: 22px 24px;
    border: 1px solid var(--rk-line);
    border-radius: 18px;
    color: var(--rk-muted);
    background: var(--rk-soft);
    font-size: 0.8rem;
    line-height: 1.68;
  }

  #rk-projekt-online .rk-online-conditions strong {
    display: block;
    margin-bottom: 5px;
  }

  #rk-projekt-online .rk-online-author-bio {
    overflow: hidden;
    margin-top: 40px;
    border: 1px solid var(--rk-line);
    border-radius: 25px;
    background: var(--rk-white);
    box-shadow: 0 18px 44px rgba(16, 37, 54, 0.1);
  }

  #rk-projekt-online .rk-online-bio-head {
    display: flex;
    gap: 22px;
    align-items: center;
    justify-content: space-between;
    padding: 28px clamp(24px, 4.5vw, 42px);
    border-bottom: 4px solid var(--rk-cyan);
    color: var(--rk-white);
    background: linear-gradient(135deg, var(--rk-dark), var(--rk-navy));
  }

  #rk-projekt-online .rk-online-bio-head h2 {
    margin-bottom: 6px;
    color: var(--rk-white);
    font-size: clamp(1.35rem, 2.9vw, 2rem);
  }

  #rk-projekt-online .rk-online-bio-head p {
    margin: 0;
    color: #cfe3e9;
    font-size: 0.84rem;
  }

  #rk-projekt-online .rk-online-bio-badge {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    flex: 0 0 auto;
    padding: 9px 13px;
    border: 1px solid rgba(40, 201, 218, 0.3);
    border-radius: 12px;
    color: #92f2f8;
    background: rgba(40, 201, 218, 0.1);
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }

  #rk-projekt-online .rk-online-bio-grid {
    display: grid;
    grid-template-columns: 285px minmax(0, 1fr);
  }

  #rk-projekt-online .rk-online-bio-profile {
    padding: 34px 26px;
    border-right: 1px solid var(--rk-line);
    background: var(--rk-soft);
    text-align: center;
  }

  #rk-projekt-online .rk-online-bio-photo {
    display: block;
    width: 142px;
    height: 142px;
    margin: 0 auto 20px;
    object-fit: cover;
    border: 5px solid var(--rk-white);
    border-radius: 50%;
    box-shadow: 0 12px 28px rgba(7, 143, 190, 0.18);
  }

  #rk-projekt-online .rk-online-bio-name {
    margin-bottom: 4px;
    font-size: 1.28rem;
  }

  #rk-projekt-online .rk-online-bio-title {
    margin-bottom: 19px;
    color: var(--rk-blue);
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
  }

  #rk-projekt-online .rk-online-bio-links {
    display: grid;
    gap: 8px;
  }

  #rk-projekt-online .rk-online-bio-links a {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 8px 11px;
    border: 1px solid #ccdde4;
    border-radius: 11px;
    color: var(--rk-navy);
    background: var(--rk-white);
    font-size: 0.72rem;
    font-weight: 850;
    line-height: 1.25;
    text-decoration: none;
  }

  #rk-projekt-online .rk-online-bio-links a:hover {
    color: var(--rk-white);
    border-color: var(--rk-blue);
    background: var(--rk-blue);
  }

  #rk-projekt-online .rk-online-bio-content {
    min-width: 0;
  }

  #rk-projekt-online .rk-online-bio-quote {
    padding: 30px clamp(24px, 4vw, 38px) 24px;
    border-bottom: 1px solid var(--rk-line);
  }

  #rk-projekt-online .rk-online-bio-quote-mark {
    display: block;
    height: 29px;
    color: var(--rk-cyan);
    font-family: Georgia, serif;
    font-size: 3.5rem;
    line-height: 0.75;
    opacity: 0.75;
  }

  #rk-projekt-online .rk-online-bio-quote p {
    margin: 0;
    color: var(--rk-dark);
    font-size: clamp(1rem, 2vw, 1.12rem);
    font-style: italic;
    font-weight: 760;
    line-height: 1.65;
  }

  #rk-projekt-online .rk-online-bio-tabs {
    display: flex;
    border-bottom: 1px solid var(--rk-line);
    background: var(--rk-soft);
  }

  #rk-projekt-online .rk-online-bio-tab {
    appearance: none;
    flex: 1;
    min-height: 50px;
    padding: 10px 8px;
    border: 0;
    border-bottom: 3px solid transparent;
    color: var(--rk-muted);
    background: transparent;
    cursor: pointer;
    font: inherit;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }

  #rk-projekt-online .rk-online-bio-tab[aria-selected="true"] {
    color: var(--rk-blue);
    border-bottom-color: var(--rk-blue);
    background: var(--rk-white);
  }

  #rk-projekt-online .rk-online-bio-panel {
    padding: 28px clamp(24px, 4vw, 38px) 33px;
  }

  #rk-projekt-online .rk-online-bio-panel p:last-child {
    margin-bottom: 0;
  }

  #rk-projekt-online .rk-online-bio-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 18px;
  }

  #rk-projekt-online .rk-online-bio-stat {
    padding: 17px;
    border: 1px solid var(--rk-line);
    border-radius: 14px;
    background: var(--rk-soft);
  }

  #rk-projekt-online .rk-online-bio-stat b {
    display: block;
    color: var(--rk-blue);
    font-size: 1.45rem;
    line-height: 1.1;
  }

  #rk-projekt-online .rk-online-bio-stat span {
    display: block;
    margin-top: 5px;
    color: var(--rk-muted);
    font-size: 0.66rem;
    font-weight: 850;
    letter-spacing: 0.04em;
    line-height: 1.4;
    text-transform: uppercase;
  }

  #rk-projekt-online .rk-online-bio-tab:focus-visible,
  #rk-projekt-online .rk-online-cta-button:focus-visible,
  #rk-projekt-online .rk-online-cta-secondary:focus-visible,
  #rk-projekt-online .rk-online-nav a:focus-visible,
  #rk-projekt-online .rk-online-bio-links a:focus-visible,
  #rk-projekt-online summary:focus-visible {
    outline: 3px solid rgba(255, 116, 56, 0.35);
    outline-offset: 3px;
  }

  @media (max-width: 940px) {
    #rk-projekt-online .rk-online-process-grid,
    #rk-projekt-online .rk-online-scope-grid,
    #rk-projekt-online .rk-online-material-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #rk-projekt-online .rk-online-process-card::after {
      display: none;
    }
  }

  @media (max-width: 780px) {
    #rk-projekt-online {
      font-size: 16px;
    }

    #rk-projekt-online .rk-online-shell {
      border-radius: 21px;
    }

    #rk-projekt-online .rk-online-answer,
    #rk-projekt-online .rk-online-bio-grid {
      grid-template-columns: 1fr;
    }

    #rk-projekt-online .rk-online-table-wrap {
      overflow: visible;
      border: 0;
      border-radius: 0;
    }

    #rk-projekt-online .rk-online-table-wrap table {
      display: block;
      min-width: 0;
      border-collapse: separate;
      border-spacing: 0;
      background: transparent;
    }

    #rk-projekt-online .rk-online-table-wrap thead {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0 0 0 0);
      clip-path: inset(50%);
      white-space: nowrap;
      border: 0;
    }

    #rk-projekt-online .rk-online-table-wrap tbody {
      display: grid;
      gap: 16px;
    }

    #rk-projekt-online .rk-online-table-wrap tbody tr {
      display: block;
      overflow: hidden;
      border: 1px solid var(--rk-line);
      border-radius: 18px;
      background: var(--rk-white);
      box-shadow: 0 10px 26px rgba(16, 37, 54, 0.065);
    }

    #rk-projekt-online .rk-online-table-wrap tbody th[scope="row"] {
      display: block;
      width: 100%;
      padding: 15px 17px;
      border: 0;
      color: var(--rk-white);
      background: linear-gradient(135deg, var(--rk-dark), var(--rk-navy));
      font-size: 0.92rem;
      line-height: 1.4;
    }

    #rk-projekt-online .rk-online-table-wrap tbody td {
      display: block;
      width: 100%;
      padding: 14px 17px 15px;
      border: 0;
      border-bottom: 1px solid var(--rk-line);
      background: var(--rk-white);
    }

    #rk-projekt-online .rk-online-table-wrap tbody tr:nth-child(even) td,
    #rk-projekt-online .rk-online-table-wrap tbody tr:nth-child(odd) td {
      background: var(--rk-white);
    }

    #rk-projekt-online .rk-online-table-wrap tbody tr td:last-child {
      border-bottom: 0;
    }

    #rk-projekt-online .rk-online-table-wrap tbody td::before {
      content: attr(data-label);
      display: block;
      margin-bottom: 5px;
      color: var(--rk-blue);
      font-size: 0.67rem;
      font-weight: 900;
      letter-spacing: 0.055em;
      line-height: 1.4;
      text-transform: uppercase;
    }

    #rk-projekt-online .rk-online-bio-profile {
      border-right: 0;
      border-bottom: 1px solid var(--rk-line);
    }

    #rk-projekt-online .rk-online-bio-links {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (max-width: 580px) {
    #rk-projekt-online {
      margin-top: 22px;
    }

    #rk-projekt-online .rk-online-hero,
    #rk-projekt-online .rk-online-content {
      padding-right: 21px;
      padding-left: 21px;
    }

    #rk-projekt-online .rk-online-learn-grid,
    #rk-projekt-online .rk-online-process-grid,
    #rk-projekt-online .rk-online-scope-grid,
    #rk-projekt-online .rk-online-material-grid,
    #rk-projekt-online .rk-online-program-grid,
    #rk-projekt-online .rk-online-bio-stats {
      grid-template-columns: 1fr;
    }

    #rk-projekt-online .rk-online-learn-card {
      padding: 18px;
    }

    #rk-projekt-online .rk-online-section-head {
      grid-template-columns: 43px minmax(0, 1fr);
      gap: 13px;
    }

    #rk-projekt-online .rk-online-section-no {
      width: 43px;
      height: 43px;
      border-radius: 12px;
    }

    #rk-projekt-online .rk-online-cta-actions {
      display: grid;
      grid-template-columns: 1fr;
    }

    #rk-projekt-online .rk-online-cta-button,
    #rk-projekt-online .rk-online-cta-secondary {
      width: 100%;
    }

    #rk-projekt-online .rk-online-bio-head {
      align-items: flex-start;
      flex-direction: column;
    }

    #rk-projekt-online .rk-online-bio-tabs {
      flex-direction: column;
    }

    #rk-projekt-online .rk-online-bio-tab {
      border-bottom: 0;
      border-left: 4px solid transparent;
      text-align: left;
    }

    #rk-projekt-online .rk-online-bio-tab[aria-selected="true"] {
      border-left-color: var(--rk-blue);
    }

    #rk-projekt-online .rk-online-bio-links {
      grid-template-columns: 1fr;
    }
  }

  #rk-projekt-online .rk-online-checker {
    overflow: hidden;
    margin: 28px 0;
    border: 1px solid var(--rk-line);
    border-radius: 22px;
    background: var(--rk-white);
    box-shadow: 0 16px 40px rgba(16, 37, 54, 0.08);
  }

  #rk-projekt-online .rk-online-checker-head {
    padding: 24px 27px;
    color: var(--rk-white);
    background: linear-gradient(135deg, var(--rk-dark), var(--rk-navy));
  }

  #rk-projekt-online .rk-online-checker-head h3 {
    margin: 0 0 7px;
    color: var(--rk-white);
    font-size: clamp(1.12rem, 2.2vw, 1.35rem);
  }

  #rk-projekt-online .rk-online-checker-head p {
    margin: 0;
    color: #c7d7e1;
    font-size: 0.9rem;
  }

  #rk-projekt-online .rk-online-check-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding: 24px 27px;
    background: var(--rk-soft);
  }

  #rk-projekt-online .rk-online-check {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    min-width: 0;
    padding: 15px;
    border: 1px solid var(--rk-line);
    border-radius: 15px;
    background: var(--rk-white);
    color: var(--rk-ink);
    font-size: 0.88rem;
    font-weight: 760;
    line-height: 1.5;
    cursor: pointer;
  }

  #rk-projekt-online .rk-online-check input {
    width: 21px;
    height: 21px;
    flex: 0 0 21px;
    margin: 2px 0 0;
    accent-color: var(--rk-blue);
  }

  #rk-projekt-online .rk-online-check-result {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    padding: 20px 27px;
    border-top: 1px solid var(--rk-line);
    background: var(--rk-white);
  }

  #rk-projekt-online .rk-online-check-score {
    display: grid;
    width: 70px;
    height: 70px;
    place-items: center;
    border-radius: 50%;
    color: var(--rk-white);
    background: var(--rk-blue);
    font-size: 1.05rem;
    font-weight: 950;
  }

  #rk-projekt-online .rk-online-check-result strong,
  #rk-projekt-online .rk-online-check-result span {
    display: block;
  }

  #rk-projekt-online .rk-online-check-result strong {
    margin-bottom: 3px;
    color: var(--rk-dark);
  }

  #rk-projekt-online .rk-online-check-result span {
    color: var(--rk-text);
    font-size: 0.86rem;
    line-height: 1.55;
  }

  #rk-projekt-online .rk-online-formula {
    margin: 24px 0;
    padding: 22px 24px;
    border-left: 5px solid var(--rk-blue);
    border-radius: 0 17px 17px 0;
    background: var(--rk-cyan-soft);
  }

  #rk-projekt-online .rk-online-formula code {
    display: block;
    overflow-wrap: anywhere;
    margin: 8px 0;
    color: var(--rk-dark);
    background: transparent;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: clamp(0.93rem, 2vw, 1.1rem);
    font-weight: 850;
    white-space: normal;
  }

  #rk-projekt-online .rk-online-formula p {
    margin: 7px 0 0;
    font-size: 0.86rem;
  }

  @media (max-width: 680px) {
    #rk-projekt-online .rk-online-check-grid {
      grid-template-columns: 1fr;
      padding: 19px;
    }

    #rk-projekt-online .rk-online-checker-head,
    #rk-projekt-online .rk-online-check-result {
      padding-right: 19px;
      padding-left: 19px;
    }

    #rk-projekt-online .rk-online-check-result {
      grid-template-columns: 1fr;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    #rk-projekt-online *,
    #rk-projekt-online *::before,
    #rk-projekt-online *::after {
      scroll-behavior: auto !important;
      transition: none !important;
    }
  }
</style>

<article id="rk-projekt-online" itemscope itemtype="https://schema.org/BlogPosting">
  <div class="rk-online-shell">
    <div class="rk-online-progress-track" aria-hidden="true"><div class="rk-online-progress"></div></div>

    <header class="rk-online-hero">
      <div class="rk-online-badge">Poradnik realizacji zdalnej</div>
      <h2>Projekt wykonywany online nie jest automatem. <span>To pełny proces projektowy bez wizyty w biurze</span></h2>

      <div class="rk-online-hook">
        <p><strong>Projekt ogrzewania podłogowego online powstaje na podstawie rzeczywistych danych konkretnego budynku.</strong> Przekazujesz rzuty i informacje techniczne elektronicznie, projektant weryfikuje je, wykonuje obliczenia OZC oraz hydraulikę, a następnie przygotowuje rysunki pętli i dokumentację PDF dla instalatora.</p>
      </div>

      <p class="rk-online-hero-lead">Słowo „online” opisuje sposób współpracy, a nie uproszczony zakres opracowania. Nie musisz przyjeżdżać z papierowymi rzutami ani umawiać spotkania stacjonarnego. O jakości projektu decydują kompletność danych, obliczenia i kontrola techniczna — nie miejsce, w którym przekazano dokumenty.</p>

      <div class="rk-online-hero-meta">
        <span>Rzuty PDF, JPG lub DWG</span>
        <span>Obliczenia OZC</span>
        <span>Rysunek wszystkich pętli</span>
        <span>Dokumentacja elektroniczna</span>
      </div>

      <div class="rk-online-author-strip" itemprop="author" itemscope itemtype="https://schema.org/Person">
        <img decoding="async" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski – specjalista systemów HVAC i ogrzewania podłogowego" width="52" height="52" loading="eager" itemprop="image">
        <div>
          <b itemprop="name">Robert Kucharski</b>
          <small itemprop="jobTitle">Specjalista systemów HVAC i ogrzewania podłogowego • autor Projekt-Ogrzewania.pl</small>
        </div>
      </div>
    </header>

    <div class="rk-online-content" itemprop="articleBody">
      <section class="rk-online-answer" aria-label="Najkrótsze wyjaśnienie projektu ogrzewania podłogowego online">
        <div>
          <span class="rk-online-answer-label">Najkrócej: co oznacza „online”?</span>
          <strong class="rk-online-answer-main">Dane przesyłasz zdalnie, ale obliczenia, rysunki i odpowiedzialność za przygotowanie dokumentacji pozostają rzeczywiste.</strong>
          <p>Projektant analizuje budynek, dobiera parametry instalacji i przekazuje dokumentację w formie elektronicznej. To usługa projektowa realizowana na odległość, a nie wynik wygenerowany po wpisaniu samego metrażu.</p>
        </div>
        <div class="rk-online-answer-badge">
          <b>PDF + obliczenia</b>
          <span>dokumentacja gotowa do przekazania instalatorowi</span>
        </div>
      </section>

      <section class="rk-online-learn" aria-labelledby="rk-online-learn-title">
        <h3 class="rk-online-learn-title" id="rk-online-learn-title">
          <svg width="25" height="25" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>
          Z tego poradnika dowiesz się:
        </h3>

        <div class="rk-online-learn-grid">
          <div class="rk-online-learn-card">
            <div class="rk-online-learn-icon" aria-hidden="true">01</div>
            <div><h4>Jak wygląda współpraca?</h4><p>Od przesłania rzutu i ankiety technicznej do odbioru kompletnego opracowania PDF.</p></div>
          </div>
          <div class="rk-online-learn-card">
            <div class="rk-online-learn-icon" aria-hidden="true">02</div>
            <div><h4>Jakie dane przygotować?</h4><p>Wymiary, izolacje, okna, posadzki, źródło ciepła i lokalizacje rozdzielaczy.</p></div>
          </div>
          <div class="rk-online-learn-card">
            <div class="rk-online-learn-icon" aria-hidden="true">03</div>
            <div><h4>Co otrzymuje instalator?</h4><p>Rysunki pętli, długości obiegów, rozstawy, przepływy i zestawienie materiałowe.</p></div>
          </div>
          <div class="rk-online-learn-card">
            <div class="rk-online-learn-icon" aria-hidden="true">04</div>
            <div><h4>Czym projekt różni się od programu?</h4><p>Dlaczego kalkulator internetowy nie zastępuje OZC, hydrauliki i kontroli specjalisty.</p></div>
          </div>
        </div>
      </section>

      <nav class="rk-online-nav" aria-label="Spis treści artykułu">
        <strong>Na skróty</strong>
        <div class="rk-online-nav-links">
          <a href="#rk-online-definicja">Co oznacza online?</a>
          <a href="#rk-online-proces">Etapy realizacji</a>
          <a href="#rk-online-dane">Potrzebne dane</a>
          <a href="#rk-online-obliczenia">Obliczenia</a>
          <a href="#rk-online-dokumentacja">Dokumentacja PDF</a>
          <a href="#rk-online-weryfikacja">Weryfikacja</a>
          <a href="#rk-online-program">Projekt a program</a>
          <a href="#rk-online-faq">FAQ</a>
        </div>
      </nav>

      <section class="rk-online-section" id="rk-online-definicja" aria-labelledby="rk-online-s1">
        <div class="rk-online-section-head">
          <div class="rk-online-section-no">1</div>
          <div>
            <h2 id="rk-online-s1">Czym jest projekt ogrzewania podłogowego online — i czym nie jest?</h2>
            <p>To indywidualna dokumentacja wykonywana zdalnie, a nie uniwersalny schemat dobierany wyłącznie do powierzchni domu.</p>
          </div>
        </div>

        <p>Współpraca online polega na elektronicznej wymianie danych. Inwestor przesyła rzuty, uzupełnia informacje o konstrukcji budynku i opisuje planowane rozwiązania. Projektant sprawdza kompletność materiałów, zadaje pytania uzupełniające, wykonuje obliczenia i przygotowuje dokumentację dla konkretnej inwestycji.</p>

        <p>Sam fakt, że nie odbywa się spotkanie stacjonarne, nie zmienia fizyki budynku. Nadal trzeba policzyć straty ciepła pomieszczeń, sprawdzić możliwą moc podłogi, dobrać temperaturę wody, rozstawy rur, długości obiegów, przepływy oraz liczbę sekcji rozdzielaczy. Dopiero suma tych działań tworzy projekt, na podstawie którego można wykonać i wyregulować instalację.</p>

        <div class="rk-online-truth">
          <p><strong>Najważniejsze rozróżnienie:</strong> „online” oznacza sposób przekazania danych i odbioru dokumentacji. Nie oznacza automatycznego rysunku, projektu katalogowego ani kalkulatora, który nie zna przegród i układu pomieszczeń Twojego domu.</p>
        </div>

        <div class="rk-online-program-grid">
          <div class="rk-online-program-card">
            <h3>Projekt wykonywany zdalnie</h3>
            <ul class="rk-online-list">
              <li>Analiza konkretnego budynku</li>
              <li>OZC dla pomieszczeń</li>
              <li>Indywidualny rysunek pętli</li>
              <li>Hydraulika i nastawy przepływów</li>
            </ul>
          </div>
          <div class="rk-online-program-card">
            <h3>Automatyczny wynik z kalkulatora</h3>
            <ul class="rk-online-list">
              <li>Najczęściej wykorzystuje sam metraż</li>
              <li>Podaje wynik orientacyjny</li>
              <li>Nie weryfikuje dokumentacji budynku</li>
              <li>Nie zastępuje rysunku wykonawczego</li>
            </ul>
          </div>
        </div>
      </section>

      <section class="rk-online-section" id="rk-online-proces" aria-labelledby="rk-online-s2">
        <div class="rk-online-section-head">
          <div class="rk-online-section-no">2</div>
          <div>
            <h2 id="rk-online-s2">Jak przebiega wykonanie projektu podłogówki online?</h2>
            <p>Sześć etapów pozwala uporządkować dane i oddzielić analizę techniczną od późniejszej decyzji zakupowej.</p>
          </div>
        </div>

        <div class="rk-online-process-grid" aria-label="Etapy wykonania projektu ogrzewania podłogowego online">
          <div class="rk-online-process-card"><span class="rk-online-process-no">01</span><h4>Wybór zakresu</h4><p>Określasz powierzchnię, liczbę kondygnacji i oczekiwany termin przygotowania dokumentacji.</p></div>
          <div class="rk-online-process-card"><span class="rk-online-process-no">02</span><h4>Ankieta techniczna</h4><p>Podajesz dane o izolacji, stolarce, wentylacji, źródle ciepła oraz planowanym wykończeniu podłóg.</p></div>
          <div class="rk-online-process-card"><span class="rk-online-process-no">03</span><h4>Przesłanie rzutów</h4><p>Wgrywasz pliki PDF, JPG lub DWG. Zmiany względem projektu architektonicznego możesz zaznaczyć na osobnej kopii rzutu.</p></div>
          <div class="rk-online-process-card"><span class="rk-online-process-no">04</span><h4>Weryfikacja danych</h4><p>Sprawdzamy wymiary i kompletność informacji. Jeżeli czegoś brakuje albo dane są sprzeczne, kontaktujemy się przed rozpoczęciem obliczeń.</p></div>
          <div class="rk-online-process-card"><span class="rk-online-process-no">05</span><h4>Obliczenia i rysunki</h4><p>Powstaje OZC, dobór parametrów podłogi, podział na pętle, analiza hydrauliczna i zestawienie materiałowe.</p></div>
          <div class="rk-online-process-card"><span class="rk-online-process-no">06</span><h4>Odbiór dokumentacji</h4><p>Gotowe opracowanie otrzymujesz elektronicznie. Plik możesz zachować, wydrukować i przekazać wykonawcy.</p></div>
        </div>

        <div class="rk-online-note"><strong>Wizyta w budynku zazwyczaj nie jest potrzebna na etapie projektowym.</strong> Warunkiem jest przekazanie czytelnych rzutów, wymiarów i danych technicznych. W modernizowanym obiekcie mogą być potrzebne dodatkowe zdjęcia, pomiary albo informacje o istniejącej instalacji.</div>
      </section>

      <aside class="rk-online-cta" aria-labelledby="rk-online-cta-1-title">
        <span class="rk-online-cta-label">Strona zamówienia</span>
        <h2 id="rk-online-cta-1-title">Sprawdź aktualną cenę i wybierz wariant projektu z OZC</h2>
        <p>Na stronie produktu wybierzesz powierzchnię budynku, liczbę kondygnacji i termin realizacji. To właśnie tam znajduje się aktualna oferta oraz możliwość złożenia zamówienia.</p>
        <div class="rk-online-cta-points" aria-label="Najważniejsze elementy usługi">
          <span>Obliczenia cieplne</span>
          <span>Rysunek pętli</span>
          <span>Przepływy i hydraulika</span>
          <span>Lista materiałów</span>
        </div>
        <div class="rk-online-cta-actions">
          <a class="rk-online-cta-button" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Sprawdź cenę i zamów projekt z OZC</a>
          <a class="rk-online-cta-secondary" href="tel:+48783212175">Zadzwoń: +48 783 212 175</a>
        </div>
      </aside>

      <section class="rk-online-section" id="rk-online-dane" aria-labelledby="rk-online-s3">
        <div class="rk-online-section-head">
          <div class="rk-online-section-no">3</div>
          <div>
            <h2 id="rk-online-s3">Jakie dane są potrzebne do wykonania projektu online?</h2>
            <p>Im lepiej opisany budynek, tym mniej założeń trzeba przyjmować podczas obliczeń.</p>
          </div>
        </div>

        <p>Podstawą są czytelne rzuty wszystkich ogrzewanych kondygnacji z wymiarami pomieszczeń. Oprócz geometrii potrzebujemy informacji określających straty ciepła i możliwości oddawania mocy przez podłogę. Sam plan pomieszczeń nie mówi, ile ciepła ucieka przez ściany, dach, okna i wentylację.</p>

        <div class="rk-online-scope-grid">
          <div class="rk-online-scope-card"><span class="rk-online-scope-icon">PDF</span><h4>Rzuty budynku</h4><p>Wymiary pomieszczeń, układ ścian, schodów, drzwi i stałej zabudowy. Przyjmujemy PDF, JPG oraz DWG.</p></div>
          <div class="rk-online-scope-card"><span class="rk-online-scope-icon">U</span><h4>Przegrody i izolacje</h4><p>Budowa ścian, grubość ocieplenia, izolacja dachu, podłogi na gruncie albo stropu nad nieogrzewaną przestrzenią.</p></div>
          <div class="rk-online-scope-card"><span class="rk-online-scope-icon">Uw</span><h4>Okna i drzwi</h4><p>Wymiary, parametry cieplne i duże przeszklenia, które mogą wymagać indywidualnego potraktowania strefy brzegowej.</p></div>
          <div class="rk-online-scope-card"><span class="rk-online-scope-icon">V</span><h4>Wentylacja</h4><p>Informacja, czy budynek ma wentylację grawitacyjną, mechaniczną bez odzysku czy rekuperację.</p></div>
          <div class="rk-online-scope-card"><span class="rk-online-scope-icon">Rλ</span><h4>Wykończenie podłóg</h4><p>Płytki, panele, winyl, drewno lub inne okładziny. Ich opór cieplny wpływa na wymaganą temperaturę i rozstaw rur.</p></div>
          <div class="rk-online-scope-card"><span class="rk-online-scope-icon">°C</span><h4>Źródło ciepła</h4><p>Pompa ciepła, kocioł kondensacyjny lub inne źródło oraz przewidywane parametry pracy instalacji.</p></div>
        </div>

        <div class="rk-online-checker" data-rk-checker>
          <div class="rk-online-checker-head">
            <h3>Sprawdź, czy możesz wysłać dane do weryfikacji</h3>
            <p>Zaznacz elementy, które masz już przygotowane. Wynik jest wskazówką organizacyjną, a nie oceną techniczną budynku.</p>
          </div>
          <div class="rk-online-check-grid">
            <label class="rk-online-check"><input type="checkbox" value="1"> Czytelne rzuty wszystkich ogrzewanych kondygnacji</label>
            <label class="rk-online-check"><input type="checkbox" value="1"> Wymiary lub skala pozwalająca odczytać geometrię</label>
            <label class="rk-online-check"><input type="checkbox" value="1"> Opis ścian, dachu i izolacji podłogi</label>
            <label class="rk-online-check"><input type="checkbox" value="1"> Informacje o oknach i rodzaju wentylacji</label>
            <label class="rk-online-check"><input type="checkbox" value="1"> Planowane podłogi oraz temperatury pomieszczeń</label>
            <label class="rk-online-check"><input type="checkbox" value="1"> Źródło ciepła i proponowane miejsca rozdzielaczy</label>
          </div>
          <div class="rk-online-check-result" aria-live="polite">
            <div class="rk-online-check-score" data-rk-score>0/6</div>
            <div><strong data-rk-score-title>Przygotuj podstawowe materiały</strong><span data-rk-score-text>Zacznij od rzutów z wymiarami. Pozostałe informacje można później uzupełnić w ankiecie.</span></div>
          </div>
        </div>

        <div class="rk-online-warning"><strong>Nie poprawiaj oryginalnego rzutu bez zachowania kopii.</strong> Jeżeli układ domu został zmieniony, najlepiej przesłać dwie wersje: oryginalną oraz kopię z wyraźnie naniesionymi zmianami i wymiarami. Może to być czytelne oznaczenie wykonane na wydruku lub w prostym programie graficznym.</div>
      </section>

      <section class="rk-online-section" id="rk-online-obliczenia" aria-labelledby="rk-online-s4">
        <div class="rk-online-section-head">
          <div class="rk-online-section-no">4</div>
          <div>
            <h2 id="rk-online-s4">Co projektant oblicza po otrzymaniu dokumentów?</h2>
            <p>Rysowanie pętli jest końcem procesu obliczeniowego, a nie jego początkiem.</p>
          </div>
        </div>

        <p>Najpierw wyznacza się <a href="https://projekt-ogrzewania.pl/projektowe-obciazenie-cieplne-ozc/">projektowe obciążenie cieplne OZC</a> dla budynku i poszczególnych pomieszczeń. Uwzględnia ono straty przez przegrody, mostki cieplne oraz wentylację przy projektowej temperaturze zewnętrznej właściwej dla lokalizacji. Dopiero znając wymaganą moc, można ocenić, czy podłoga odda ją przy bezpiecznej temperaturze powierzchni.</p>

        <div class="rk-online-formula">
          <strong>Uproszczony zapis bilansu cieplnego pomieszczenia:</strong>
          <code>Q<sub>H</sub> = Σ(U × A × ΔT) + Q<sub>v</sub> + Σ(ψ × l × ΔT)</code>
          <p>U — współczynnik przenikania przegrody, A — jej powierzchnia, ΔT — różnica temperatur, Q<sub>v</sub> — strata wentylacyjna, ψ × l — wpływ mostków liniowych. W projekcie analizuje się rzeczywiste przegrody i warunki obliczeniowe, a nie jeden średni wskaźnik W/m² dla całego domu.</p>
        </div>

        <p>Następnie dobiera się parametry ogrzewania płaszczyznowego: temperaturę zasilania i powrotu, rozstaw rur oraz podział powierzchni na obiegi. Długości pętli powinny umożliwiać uzyskanie wymaganych przepływów bez nadmiernych oporów. Dwie pętle o podobnym metrażu mogą wymagać innych nastaw, jeżeli obsługują pomieszczenia o różnej mocy.</p>

        <div class="rk-online-formula">
          <strong>Przepływ wynikający z mocy obiegu:</strong>
          <code>V̇ [l/h] = Q [W] ÷ (1,163 × ΔT [K])</code>
          <p>Przykład: obieg o mocy 800 W i różnicy temperatur 5 K wymaga orientacyjnie około 138 l/h, czyli 2,3 l/min. Nastawa nie powinna wynikać z tego, że „wszystkie rotametry ustawiamy tak samo”, lecz z mocy i parametrów konkretnego obiegu.</p>
        </div>

        <div class="rk-online-scope-grid">
          <div class="rk-online-scope-card"><span class="rk-online-scope-icon">OZC</span><h4>Straty pomieszczeń</h4><p>Moc potrzebna do utrzymania temperatury w warunkach obliczeniowych.</p></div>
          <div class="rk-online-scope-card"><span class="rk-online-scope-icon">W/m²</span><h4>Moc podłogi</h4><p>Ocena możliwej emisji ciepła z uwzględnieniem okładziny i temperatury powierzchni.</p></div>
          <div class="rk-online-scope-card"><span class="rk-online-scope-icon">cm</span><h4>Rozstaw rur</h4><p>Dobór zagęszczenia przewodów do wymaganej mocy i warunków danego pomieszczenia.</p></div>
          <div class="rk-online-scope-card"><span class="rk-online-scope-icon">m</span><h4>Długości pętli</h4><p>Podział instalacji na obiegi możliwe do prawidłowego zrównoważenia.</p></div>
          <div class="rk-online-scope-card"><span class="rk-online-scope-icon">Δp</span><h4>Opory hydrauliczne</h4><p>Sprawdzenie najniekorzystniejszego obiegu i warunków pracy pompy obiegowej.</p></div>
          <div class="rk-online-scope-card"><span class="rk-online-scope-icon">l/min</span><h4>Nastawy rotametrów</h4><p>Przepływy wynikające z zapotrzebowania oraz różnicy temperatur w obiegach.</p></div>
        </div>

        <div class="rk-online-note"><strong>Rozstaw 10, 15 lub 20 cm nie jest wybierany z jednej uniwersalnej tabeli.</strong> Zależy od strat pomieszczenia, temperatury wody, rodzaju jastrychu, oporu okładziny oraz dopuszczalnej temperatury powierzchni podłogi.</div>
      </section>

      <section class="rk-online-section" id="rk-online-dokumentacja" aria-labelledby="rk-online-s5">
        <div class="rk-online-section-head">
          <div class="rk-online-section-no">5</div>
          <div>
            <h2 id="rk-online-s5">Co otrzymujesz w dokumentacji przekazywanej online?</h2>
            <p>Plik PDF ma przełożyć wyniki obliczeń na konkretne informacje potrzebne przy wykonaniu i regulacji instalacji.</p>
          </div>
        </div>

        <p>Zakres nie powinien kończyć się na estetycznym rysunku spirali. Wykonawca potrzebuje danych pozwalających odtworzyć układ pętli, zachować przyjęte długości, podłączyć odpowiednie sekcje rozdzielacza oraz ustawić przepływy. Inwestor powinien natomiast otrzymać zestawienie pozwalające skontrolować zakres robót i zakupu materiałów. Więcej przykładów znajdziesz w poradniku pokazującym, <a href="https://projekt-ogrzewania.pl/jak-powinien-wygladac-profesjonalny-projekt-do-ogrzewania-podlogowego/">jak powinien wyglądać profesjonalny projekt ogrzewania podłogowego</a>.</p>

        <div class="rk-online-table-wrap" role="region" aria-label="Elementy dokumentacji projektu ogrzewania podłogowego online" tabindex="0">
          <table>
            <thead><tr><th scope="col">Element</th><th scope="col">Co zawiera</th><th scope="col">Do czego służy na budowie</th></tr></thead>
            <tbody>
              <tr><th scope="row">Obliczenia OZC</th><td data-label="Co zawiera">Straty ciepła budynku i poszczególnych pomieszczeń.</td><td data-label="Do czego służy na budowie">Określają wymaganą moc podłogi i pomagają poprawnie dobrać źródło ciepła.</td></tr>
              <tr><th scope="row">Rzut instalacji</th><td data-label="Co zawiera">Przebieg pętli, rozstawy rur, strefy oraz przypisanie obiegów.</td><td data-label="Do czego służy na budowie">Pokazuje instalatorowi sposób ułożenia rur w każdym pomieszczeniu.</td></tr>
              <tr><th scope="row">Tabela pętli</th><td data-label="Co zawiera">Długości obiegów, powierzchnie, moce i wymagane przepływy.</td><td data-label="Do czego służy na budowie">Ułatwia kontrolę długości oraz późniejsze ustawienie rotametrów.</td></tr>
              <tr><th scope="row">Parametry instalacji</th><td data-label="Co zawiera">Temperaturę zasilania i powrotu oraz założenia pracy systemu.</td><td data-label="Do czego służy na budowie">Pozwala skonfigurować źródło ciepła i ocenić warunki pracy podłogówki.</td></tr>
              <tr><th scope="row">Rozdzielacze</th><td data-label="Co zawiera">Lokalizacje, liczbę sekcji i przyporządkowanie pomieszczeń.</td><td data-label="Do czego służy na budowie">Zapobiega zakupowi zbyt małych rozdzielaczy i porządkuje podłączenia.</td></tr>
              <tr><th scope="row">Zestawienie materiałów</th><td data-label="Co zawiera">Ilości podstawowych elementów wynikające z przyjętego układu.</td><td data-label="Do czego służy na budowie">Stanowi podstawę przygotowania rzeczywistej listy zakupów i wyceny.</td></tr>
            </tbody>
          </table>
        </div>

        <div class="rk-online-truth"><p><strong>PDF nie jest gorszy od wydruku.</strong> Zawiera te same dane, można go powiększać na ekranie, wydrukować w potrzebnej skali i przechowywać razem z pozostałą dokumentacją budynku. Kluczowa jest czytelność opracowania i zgodność realizacji z jego założeniami.</p></div>
      </section>

      <section class="rk-online-section" id="rk-online-weryfikacja" aria-labelledby="rk-online-s6">
        <div class="rk-online-section-head">
          <div class="rk-online-section-no">6</div>
          <div>
            <h2 id="rk-online-s6">Jak wygląda weryfikacja danych, zmian i ewentualnych poprawek?</h2>
            <p>Najwięcej błędów można wyeliminować jeszcze przed rozpoczęciem rysowania pętli.</p>
          </div>
        </div>

        <p>Przed obliczeniami porównujemy rzuty z informacjami podanymi w ankiecie. Sprawdzamy między innymi powierzchnie, liczbę kondygnacji, układ pomieszczeń, lokalizacje rozdzielaczy, planowane okładziny i parametry źródła ciepła. Jeśli dokumentacja nie pozwala jednoznacznie odczytać wymiaru albo opis izolacji jest niepełny, prosimy o uzupełnienie zamiast przyjmować przypadkową wartość.</p>

        <div class="rk-online-process-grid">
          <div class="rk-online-process-card"><span class="rk-online-process-no">A</span><h4>Kontrola kompletności</h4><p>Sprawdzamy, czy są wszystkie kondygnacje, wymiary, skala oraz opis podstawowych przegród.</p></div>
          <div class="rk-online-process-card"><span class="rk-online-process-no">B</span><h4>Pytania uzupełniające</h4><p>Wyjaśniamy rozbieżności dotyczące izolacji, okien, posadzek, temperatur albo układu pomieszczeń.</p></div>
          <div class="rk-online-process-card"><span class="rk-online-process-no">C</span><h4>Założenia projektowe</h4><p>Potwierdzamy źródło ciepła, lokalizacje rozdzielaczy i istotne ograniczenia wykonawcze.</p></div>
          <div class="rk-online-process-card"><span class="rk-online-process-no">D</span><h4>Finalizacja</h4><p>Po zamknięciu danych przygotowujemy końcowe rysunki, tabele i zestawienie materiałowe.</p></div>
        </div>

        <div class="rk-online-material-box">
          <h3>Przykład: dom po zmianach względem projektu architektonicznego</h3>
          <p>Jeżeli przesunięto ścianę, połączono dwa pomieszczenia albo zmieniono lokalizację szafki, projektant powinien otrzymać zarówno pierwotny rzut, jak i wersję z naniesionym stanem planowanym. Na zmodyfikowanej kopii trzeba dopisać aktualne wymiary. Pozwala to zachować punkt odniesienia i uniknąć projektowania pętli według nieaktualnej geometrii.</p>
        </div>

        <ul class="rk-online-list">
          <li><strong>Drobna korekta opisu</strong> nie jest tym samym co zmiana geometrii budynku po zakończeniu obliczeń.</li>
          <li><strong>Przesunięcie rozdzielacza</strong> może zmienić długości dobiegów, opory i podział pętli.</li>
          <li><strong>Zmiana paneli na grubą deskę</strong> wpływa na opór cieplny podłogi i możliwą moc grzewczą.</li>
          <li><strong>Zmiana źródła ciepła lub temperatury zasilania</strong> może wymagać ponownego sprawdzenia rozstawów.</li>
        </ul>

        <div class="rk-online-warning"><strong>Zmiany przekazuj przed montażem rur.</strong> Po zalaniu instalacji jastrychem nawet prawidłowo przeliczona korekta nie cofnie błędu wykonanego na budowie.</div>
      </section>

      <section class="rk-online-section" id="rk-online-program" aria-labelledby="rk-online-s7">
        <div class="rk-online-section-head">
          <div class="rk-online-section-no">7</div>
          <div>
            <h2 id="rk-online-s7">Projekt podłogówki online a program lub kalkulator internetowy</h2>
            <p>Oba rozwiązania działają przez internet, ale odpowiadają na zupełnie inne potrzeby.</p>
          </div>
        </div>

        <div class="rk-online-program-grid">
          <div class="rk-online-program-card">
            <h3>Kalkulator lub program online</h3>
            <p>Może oszacować długość rury, orientacyjny rozstaw albo zapotrzebowanie przy uproszczonych założeniach. Jest przydatny do edukacji i wstępnego porównania wariantów.</p>
            <ul class="rk-online-list">
              <li>Wynik zależny od danych wpisanych przez użytkownika</li>
              <li>Brak kontroli rzutów i sprzecznych informacji</li>
              <li>Zwykle brak kompletnego rysunku wykonawczego</li>
              <li>Brak indywidualnej odpowiedzialności za założenia</li>
            </ul>
            <p>Do obliczeń orientacyjnych możesz wykorzystać <a href="https://projekt-ogrzewania.pl/kompleksowy-kalkulator-ogrzewania-podlogowego/">kompleksowy kalkulator ogrzewania podłogowego</a>.</p>
          </div>
          <div class="rk-online-program-card">
            <h3>Indywidualny projekt realizowany online</h3>
            <p>Projektant otrzymuje dokumenty budynku, weryfikuje je i łączy obliczenia cieplne z rzeczywistym układem pętli oraz hydrauliką instalacji.</p>
            <ul class="rk-online-list">
              <li>Dane konkretnego domu i pomieszczeń</li>
              <li>Analiza strat oraz możliwości grzewczych podłogi</li>
              <li>Rysunki, długości, przepływy i rozdzielacze</li>
              <li>Dokumentacja przygotowana do realizacji</li>
            </ul>
          </div>
        </div>

        <div class="rk-online-truth"><p><strong>Nie trzeba wybierać między „online” a „profesjonalnie”.</strong> Zdalny sposób współpracy może prowadzić do pełnej dokumentacji. Problem zaczyna się dopiero wtedy, gdy automatyczne oszacowanie zostaje przedstawione jako zamiennik obliczeń i rysunków wykonawczych.</p></div>
      </section>

      <section class="rk-online-section" id="rk-online-organizacja" aria-labelledby="rk-online-s8">
        <div class="rk-online-section-head">
          <div class="rk-online-section-no">8</div>
          <div>
            <h2 id="rk-online-s8">Gdzie sprawdzić termin, cenę i warunki zamówienia?</h2>
            <p>Artykuł wyjaśnia proces. Aktualne warianty usługi pozostają na stronie sprzedażowej.</p>
          </div>
        </div>

        <p>Cena zależy między innymi od powierzchni budynku, liczby kondygnacji i wybranego czasu realizacji. Ponieważ warianty mogą się zmieniać, nie powielamy tutaj tabeli handlowej. Aktualną kwotę i dostępne opcje sprawdzisz na stronie <a href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">zamówienia indywidualnego projektu ogrzewania podłogowego z OZC</a>.</p>

        <p>Jeżeli planujesz również zakup rur, rozdzielaczy i szafek, osobno opisaliśmy zasady, według których dokumentacja może zostać rozliczona przy zakupie materiałów. Szczegóły znajdziesz na stronie <a href="https://projekt-ogrzewania.pl/darmowy-projekt-ogrzewania-podlogowego/">darmowy projekt ogrzewania podłogowego</a>. Dzięki temu niniejszy poradnik pozostaje źródłem informacji o realizacji online, a warunki handlowe są aktualizowane w jednym właściwym miejscu.</p>

        <div class="rk-online-note"><strong>Masz nietypowy budynek albo nie wiesz, czy Twoje pliki wystarczą?</strong> Zadzwoń pod numer <a href="tel:+48783212175">+48 783 212 175</a> lub wyślij wiadomość przez WhatsApp: <a href="https://wa.me/48794358367">+48 794 358 367</a>. Przed rozpoczęciem obliczeń możemy wskazać, czego brakuje.</div>
      </section>

      <aside class="rk-online-cta" aria-labelledby="rk-online-cta-2-title">
        <span class="rk-online-cta-label">Dokumentacja dopasowana do budynku</span>
        <h2 id="rk-online-cta-2-title">Prześlij dane zdalnie i odbierz kompletny projekt w formie elektronicznej</h2>
        <p>Na stronie produktu zobaczysz bieżącą cenę, zakres powierzchni oraz dostępny termin. Po zamówieniu otrzymasz ankietę umożliwiającą przekazanie danych i rzutów.</p>
        <div class="rk-online-cta-actions">
          <a class="rk-online-cta-button" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Przejdź do zamówienia projektu</a>
          <a class="rk-online-cta-secondary" href="https://wa.me/48794358367">WhatsApp: +48 794 358 367</a>
        </div>
      </aside>

      <section class="rk-online-section" id="rk-online-faq" aria-labelledby="rk-online-s9">
        <div class="rk-online-section-head">
          <div class="rk-online-section-no">9</div>
          <div>
            <h2 id="rk-online-s9">Projekt ogrzewania podłogowego online – FAQ</h2>
            <p>Najważniejsze odpowiedzi dotyczące danych, plików, obliczeń, dokumentacji PDF i współpracy zdalnej.</p>
          </div>
        </div>

        <div class="rk-online-faq">
          <details id="rk-online-faq-1"><summary>Czy projekt ogrzewania podłogowego wykonany online jest pełnowartościowy?</summary><p>Tak. Sposób przesłania danych nie ogranicza zakresu technicznego opracowania. Pełnowartościowy projekt online może zawierać obliczenia OZC, rysunek pętli, parametry zasilania, analizę hydrauliczną, nastawy przepływów i zestawienie materiałowe. O jakości decydują dane i obliczenia, a nie spotkanie stacjonarne.</p></details>
          <details id="rk-online-faq-2"><summary>Jakie pliki można przesłać do wykonania projektu online?</summary><p>Najczęściej wystarczą czytelne rzuty w formacie PDF, JPG lub DWG. Pliki muszą zawierać wymiary albo skalę pozwalającą odtworzyć geometrię pomieszczeń. W przypadku zmian warto przesłać oryginalny rzut i osobną kopię z naniesionym stanem planowanym.</p></details>
          <details id="rk-online-faq-3"><summary>Czy zdjęcie papierowego rzutu może wystarczyć?</summary><p>Czytelne zdjęcie lub skan może wystarczyć do wstępnej weryfikacji, jeżeli kartka jest sfotografowana prostopadle, wszystkie wymiary są widoczne, a obraz nie jest zniekształcony. Gdy brakuje wymiarów albo skali, poprosimy o ich uzupełnienie.</p></details>
          <details id="rk-online-faq-4"><summary>Czy do projektu online potrzebny jest plik DWG?</summary><p>Nie zawsze. DWG ułatwia pracę, ale dokumentację można przygotować również na podstawie poprawnego pliku PDF lub czytelnego rzutu graficznego. Najważniejsze są kompletne wymiary i zgodność rzutu z planowanym układem budynku.</p></details>
          <details id="rk-online-faq-5"><summary>Jak przekazać zmiany względem projektu architektonicznego?</summary><p>Najbezpieczniej wysłać dwie wersje: oryginalny rzut oraz jego kopię z wyraźnie zaznaczonymi zmianami i aktualnymi wymiarami. Oznaczenia można wykonać na wydruku lub w prostym programie graficznym, pod warunkiem że pozostają czytelne.</p></details>
          <details id="rk-online-faq-6"><summary>Czy projekt online jest generowany automatycznie przez program?</summary><p>Nie. Programy wspierają obliczenia i rysowanie, ale indywidualny projekt wymaga weryfikacji danych, przyjęcia założeń, analizy cieplnej i hydraulicznej oraz dopasowania pętli do konkretnego rzutu. Słowo „online” opisuje zdalny sposób współpracy.</p></details>
          <details id="rk-online-faq-7"><summary>Czy dokumentacja online zawiera obliczenia OZC?</summary><p>Tak, jeśli taki zakres obejmuje zamówiona usługa. OZC określa straty ciepła budynku i pomieszczeń, a jego wyniki są podstawą doboru mocy podłogi, rozstawów rur, temperatury zasilania i wymaganych przepływów.</p></details>
          <details id="rk-online-faq-8"><summary>Czy plik PDF wystarczy instalatorowi do wykonania podłogówki?</summary><p>Tak, jeżeli PDF zawiera czytelne rzuty pętli, ich długości, rozstawy, przypisanie do rozdzielaczy, parametry pracy i wymagane przepływy. Dokument można wyświetlić na ekranie lub wydrukować w potrzebnej skali.</p></details>
          <details id="rk-online-faq-9"><summary>Czy po otrzymaniu projektu można wprowadzić poprawki?</summary><p>Możliwość i zakres korekty zależą od rodzaju zmiany. Poprawienie opisu różni się od przesunięcia rozdzielacza, zmiany układu ścian lub rodzaju podłogi, ponieważ takie decyzje mogą wpływać na obliczenia i hydraulikę. Zmiany należy zgłosić przed montażem instalacji.</p></details>
          <details id="rk-online-faq-10"><summary>Gdzie można sprawdzić aktualną cenę projektu?</summary><p>Aktualna cena, wariant powierzchni, liczba kondygnacji i dostępny czas realizacji znajdują się na stronie produktu. Dzięki temu informacje handlowe są aktualizowane w jednym miejscu, a artykuł pozostaje poradnikiem o przebiegu współpracy online.</p></details>
          <details id="rk-online-faq-11"><summary>Czy projekt zamówiony online może zostać rozliczony przy zakupie materiałów?</summary><p>Tak. Zasady pełnego lub proporcjonalnego odliczenia wartości dokumentacji są opisane na osobnej stronie dotyczącej darmowego projektu przy zakupie materiałów. Samo wykonanie projektu online nie zobowiązuje do zakupu materiałów.</p></details>
        </div>
      </section>

      <section class="rk-online-summary" aria-labelledby="rk-online-summary-title">
        <h2 id="rk-online-summary-title">Online zmienia sposób współpracy, ale nie zastępuje obliczeń</h2>
        <p><strong>Dobry projekt wykonywany zdalnie zaczyna się od danych budynku, a kończy dokumentacją, którą instalator może rzeczywiście wykorzystać.</strong> Pomiędzy tymi etapami muszą znaleźć się weryfikacja rzutów, OZC, dobór parametrów podłogi, podział na pętle i kontrola hydrauliki.</p>
        <p>Jeżeli przygotujesz czytelne rzuty, opis izolacji, okien, wentylacji, posadzek i źródła ciepła, cały proces można przeprowadzić bez spotkania stacjonarnego. Otrzymany PDF pozostaje trwałym elementem dokumentacji technicznej budynku i punktem odniesienia podczas montażu oraz regulacji instalacji.</p>
      </section>

      <div class="rk-online-conditions" aria-label="Kontakt w sprawie projektu wykonywanego online">
        <strong>Kontakt i weryfikacja dokumentów</strong>
        Jeśli nie masz pewności, czy rzuty są wystarczające, skontaktuj się przed zamówieniem. Telefon:
        <a href="tel:+48783212175">+48 783 212 175</a>. WhatsApp:
        <a href="https://wa.me/48794358367">+48 794 358 367</a>.
        Aktualny zakres i warianty usługi znajdują się wyłącznie na stronie produktu.
      </div>

      <aside class="rk-online-author-bio" aria-labelledby="rk-online-author-title" itemprop="author" itemscope itemtype="https://schema.org/Person">
        <div class="rk-online-bio-head">
          <div><h2 id="rk-online-author-title">Autor opracowania</h2><p>Praktyka projektowa, obliczenia techniczne i dokumentacja przygotowywana dla inwestorów w całej Polsce.</p></div>
          <div class="rk-online-bio-badge">E‑E‑A‑T • HVAC</div>
        </div>

        <div class="rk-online-bio-grid">
          <div class="rk-online-bio-profile">
            <img decoding="async" class="rk-online-bio-photo" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski – specjalista systemów HVAC i ogrzewania podłogowego" width="300" height="300" loading="lazy" itemprop="image">
            <h3 class="rk-online-bio-name" itemprop="name">Robert Kucharski</h3>
            <div class="rk-online-bio-title" itemprop="jobTitle">Specjalista systemów HVAC i ogrzewania podłogowego</div>
            <div class="rk-online-bio-links">
              <a href="https://www.facebook.com/projektogrzewaniapl/" target="_blank" rel="me nofollow noopener">Facebook</a>
              <a href="https://www.linkedin.com/in/robert-kucharski-38069b48/" target="_blank" rel="me nofollow noopener">LinkedIn</a>
              <a href="https://projekt-ogrzewania.pl/author/admin3399/" rel="author">Profil autora</a>
            </div>
          </div>

          <div class="rk-online-bio-content">
            <div class="rk-online-bio-quote">
              <span class="rk-online-bio-quote-mark" aria-hidden="true">“</span>
              <p>Projektowanie online działa wtedy, gdy po drugiej stronie nie ma automatu, lecz człowiek, który sprawdza rzuty, wychwytuje braki i łączy obliczenia z realiami budowy. Internet skraca drogę dokumentów, ale nie może skracać drogi od danych do poprawnego wyniku.</p>
            </div>

            <div class="rk-online-bio-tabs" role="tablist" aria-label="Informacje o autorze">
              <button class="rk-online-bio-tab" id="rk-online-bio-tab-about" type="button" role="tab" aria-selected="true" aria-controls="rk-online-bio-about">O autorze</button>
              <button class="rk-online-bio-tab" id="rk-online-bio-tab-exp" type="button" role="tab" aria-selected="false" aria-controls="rk-online-bio-exp" tabindex="-1">Doświadczenie</button>
              <button class="rk-online-bio-tab" id="rk-online-bio-tab-portals" type="button" role="tab" aria-selected="false" aria-controls="rk-online-bio-portals" tabindex="-1">Portale</button>
            </div>

            <div class="rk-online-bio-panel" id="rk-online-bio-about" role="tabpanel" aria-labelledby="rk-online-bio-tab-about">
              <p itemprop="description">Specjalizuję się w projektowaniu systemów HVAC, ze szczególnym uwzględnieniem wodnego ogrzewania podłogowego, obliczeń obciążenia cieplnego oraz hydrauliki instalacji. Dokumentacja ma być poprawna obliczeniowo, czytelna dla inwestora i możliwa do wykonania na budowie.</p>
            </div>
            <div class="rk-online-bio-panel" id="rk-online-bio-exp" role="tabpanel" aria-labelledby="rk-online-bio-tab-exp" hidden>
              <p>W pracy wykorzystuję doświadczenie z dokumentacji projektowej, analiz OZC, doboru temperatur zasilania, przepływów, rozdzielaczy i źródeł ciepła. Zdalny model współpracy pozwala obsługiwać inwestycje w całej Polsce bez rezygnowania z indywidualnej analizy budynku.</p>
              <div class="rk-online-bio-stats">
                <div class="rk-online-bio-stat"><b>1000+</b><span>projektów i analiz OZC</span></div>
                <div class="rk-online-bio-stat"><b>Cała Polska</b><span>dokumentacja przekazywana online</span></div>
              </div>
            </div>
            <div class="rk-online-bio-panel" id="rk-online-bio-portals" role="tabpanel" aria-labelledby="rk-online-bio-tab-portals" hidden>
              <p>Tworzę i rozwijam serwisy, w których wiedza techniczna pomaga podejmować lepsze decyzje budowlane: <a href="https://projekt-ogrzewania.pl/">Projekt-Ogrzewania.pl</a>, <a href="https://remont.biz.pl/" target="_blank" rel="me nofollow noopener">Remont.biz.pl</a> oraz <a href="https://sobir.pl/" target="_blank" rel="me nofollow noopener">Sobir.pl</a>. Publikuję również na <a href="https://www.facebook.com/projektogrzewaniapl/" target="_blank" rel="me nofollow noopener">Facebooku</a> i <a href="https://www.linkedin.com/in/robert-kucharski-38069b48/" target="_blank" rel="me nofollow noopener">LinkedInie</a>.</p>
            </div>
          </div>
        </div>
      </aside>
    </div>
  </div>
</article>

<script>
  (function () {
    "use strict";

    var root = document.getElementById("rk-projekt-online");
    if (!root) return;

    function createTabs(buttonSelector, panelSelector) {
      var buttons = Array.prototype.slice.call(root.querySelectorAll(buttonSelector));
      var panels = Array.prototype.slice.call(root.querySelectorAll(panelSelector));
      if (!buttons.length || buttons.length !== panels.length) return;

      function activate(index, moveFocus) {
        buttons.forEach(function (button, buttonIndex) {
          var selected = buttonIndex === index;
          button.setAttribute("aria-selected", selected ? "true" : "false");
          button.tabIndex = selected ? 0 : -1;
          panels[buttonIndex].hidden = !selected;
        });
        if (moveFocus) buttons[index].focus();
      }

      buttons.forEach(function (button, index) {
        button.addEventListener("click", function () { activate(index, false); });
        button.addEventListener("keydown", function (event) {
          var nextIndex = index;
          if (event.key === "ArrowRight" || event.key === "ArrowDown") nextIndex = (index + 1) % buttons.length;
          if (event.key === "ArrowLeft" || event.key === "ArrowUp") nextIndex = (index - 1 + buttons.length) % buttons.length;
          if (event.key === "Home") nextIndex = 0;
          if (event.key === "End") nextIndex = buttons.length - 1;
          if (nextIndex !== index) {
            event.preventDefault();
            activate(nextIndex, true);
          }
        });
      });
    }

    createTabs(".rk-online-bio-tab", ".rk-online-bio-panel");

    var checker = root.querySelector("[data-rk-checker]");
    if (checker) {
      var checks = Array.prototype.slice.call(checker.querySelectorAll('input[type="checkbox"]'));
      var score = checker.querySelector("[data-rk-score]");
      var title = checker.querySelector("[data-rk-score-title]");
      var description = checker.querySelector("[data-rk-score-text]");

      function updateChecker() {
        var completed = checks.filter(function (input) { return input.checked; }).length;
        if (score) score.textContent = completed + "/" + checks.length;
        if (!title || !description) return;

        if (completed <= 2) {
          title.textContent = "Przygotuj podstawowe materiały";
          description.textContent = "Zacznij od rzutów z wymiarami. Pozostałe informacje można później uzupełnić w ankiecie.";
        } else if (completed <= 4) {
          title.textContent = "Można rozpocząć wstępną weryfikację";
          description.textContent = "Masz już ważną część danych. Brakujące parametry wskażemy przed rozpoczęciem obliczeń.";
        } else {
          title.textContent = "Zestaw danych jest prawie kompletny";
          description.textContent = "Dokumenty można przekazać do kontroli. Ostateczną kompletność potwierdzi projektant po sprawdzeniu plików.";
        }
      }

      checks.forEach(function (input) { input.addEventListener("change", updateChecker); });
      updateChecker();
    }

    var progress = root.querySelector(".rk-online-progress");
    var ticking = false;

    function updateProgress() {
      if (!progress) return;
      var rootTop = root.getBoundingClientRect().top + window.pageYOffset;
      var travel = Math.max(root.offsetHeight - window.innerHeight, 1);
      var value = Math.min(Math.max((window.pageYOffset - rootTop) / travel, 0), 1);
      progress.style.width = (value * 100).toFixed(2) + "%";
      ticking = false;
    }

    function requestProgressUpdate() {
      if (ticking) return;
      ticking = true;
      window.requestAnimationFrame(updateProgress);
    }

    window.addEventListener("scroll", requestProgressUpdate, { passive: true });
    window.addEventListener("resize", requestProgressUpdate, { passive: true });
    updateProgress();
  }());
</script>

<!--
  Yoast generuje dane Article, WebPage, Person, Organization i BreadcrumbList.
  Poniższy blok dodaje wyłącznie pytania widoczne w treści i nie tworzy
  konkurencyjnej encji Product ani Offer.
-->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Czy projekt ogrzewania podłogowego wykonany online jest pełnowartościowy?",
      "acceptedAnswer": {"@type": "Answer", "text": "Tak. Sposób przesłania danych nie ogranicza zakresu technicznego opracowania. Pełnowartościowy projekt online może zawierać obliczenia OZC, rysunek pętli, parametry zasilania, analizę hydrauliczną, nastawy przepływów i zestawienie materiałowe. O jakości decydują dane i obliczenia, a nie spotkanie stacjonarne."}
    },
    {
      "@type": "Question",
      "name": "Jakie pliki można przesłać do wykonania projektu online?",
      "acceptedAnswer": {"@type": "Answer", "text": "Najczęściej wystarczą czytelne rzuty w formacie PDF, JPG lub DWG. Pliki muszą zawierać wymiary albo skalę pozwalającą odtworzyć geometrię pomieszczeń. W przypadku zmian warto przesłać oryginalny rzut i osobną kopię z naniesionym stanem planowanym."}
    },
    {
      "@type": "Question",
      "name": "Czy zdjęcie papierowego rzutu może wystarczyć?",
      "acceptedAnswer": {"@type": "Answer", "text": "Czytelne zdjęcie lub skan może wystarczyć do wstępnej weryfikacji, jeżeli kartka jest sfotografowana prostopadle, wszystkie wymiary są widoczne, a obraz nie jest zniekształcony. Gdy brakuje wymiarów albo skali, poprosimy o ich uzupełnienie."}
    },
    {
      "@type": "Question",
      "name": "Czy do projektu online potrzebny jest plik DWG?",
      "acceptedAnswer": {"@type": "Answer", "text": "Nie zawsze. DWG ułatwia pracę, ale dokumentację można przygotować również na podstawie poprawnego pliku PDF lub czytelnego rzutu graficznego. Najważniejsze są kompletne wymiary i zgodność rzutu z planowanym układem budynku."}
    },
    {
      "@type": "Question",
      "name": "Jak przekazać zmiany względem projektu architektonicznego?",
      "acceptedAnswer": {"@type": "Answer", "text": "Najbezpieczniej wysłać dwie wersje: oryginalny rzut oraz jego kopię z wyraźnie zaznaczonymi zmianami i aktualnymi wymiarami. Oznaczenia można wykonać na wydruku lub w prostym programie graficznym, pod warunkiem że pozostają czytelne."}
    },
    {
      "@type": "Question",
      "name": "Czy projekt online jest generowany automatycznie przez program?",
      "acceptedAnswer": {"@type": "Answer", "text": "Nie. Programy wspierają obliczenia i rysowanie, ale indywidualny projekt wymaga weryfikacji danych, przyjęcia założeń, analizy cieplnej i hydraulicznej oraz dopasowania pętli do konkretnego rzutu. Słowo „online” opisuje zdalny sposób współpracy."}
    },
    {
      "@type": "Question",
      "name": "Czy dokumentacja online zawiera obliczenia OZC?",
      "acceptedAnswer": {"@type": "Answer", "text": "Tak, jeśli taki zakres obejmuje zamówiona usługa. OZC określa straty ciepła budynku i pomieszczeń, a jego wyniki są podstawą doboru mocy podłogi, rozstawów rur, temperatury zasilania i wymaganych przepływów."}
    },
    {
      "@type": "Question",
      "name": "Czy plik PDF wystarczy instalatorowi do wykonania podłogówki?",
      "acceptedAnswer": {"@type": "Answer", "text": "Tak, jeżeli PDF zawiera czytelne rzuty pętli, ich długości, rozstawy, przypisanie do rozdzielaczy, parametry pracy i wymagane przepływy. Dokument można wyświetlić na ekranie lub wydrukować w potrzebnej skali."}
    },
    {
      "@type": "Question",
      "name": "Czy po otrzymaniu projektu można wprowadzić poprawki?",
      "acceptedAnswer": {"@type": "Answer", "text": "Możliwość i zakres korekty zależą od rodzaju zmiany. Poprawienie opisu różni się od przesunięcia rozdzielacza, zmiany układu ścian lub rodzaju podłogi, ponieważ takie decyzje mogą wpływać na obliczenia i hydraulikę. Zmiany należy zgłosić przed montażem instalacji."}
    },
    {
      "@type": "Question",
      "name": "Gdzie można sprawdzić aktualną cenę projektu?",
      "acceptedAnswer": {"@type": "Answer", "text": "Aktualna cena, wariant powierzchni, liczba kondygnacji i dostępny czas realizacji znajdują się na stronie produktu. Dzięki temu informacje handlowe są aktualizowane w jednym miejscu, a artykuł pozostaje poradnikiem o przebiegu współpracy online."}
    },
    {
      "@type": "Question",
      "name": "Czy projekt zamówiony online może zostać rozliczony przy zakupie materiałów?",
      "acceptedAnswer": {"@type": "Answer", "text": "Tak. Zasady pełnego lub proporcjonalnego odliczenia wartości dokumentacji są opisane na osobnej stronie dotyczącej darmowego projektu przy zakupie materiałów. Samo wykonanie projektu online nie zobowiązuje do zakupu materiałów."}
    }
  ]
}
</script>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/projekt-ogrzewania-podlogowego-online/">Projekt ogrzewania podłogowego online.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Strefy klimatyczne w Polsce – wyszukiwarka miejscowości, temperatura projektowa i OZC.</title>
		<link>https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/</link>
		
		<dc:creator><![CDATA[Robert Kucharski]]></dc:creator>
		<pubDate>Sat, 01 Aug 2026 10:12:32 +0000</pubDate>
				<category><![CDATA[Bilans energetyczny budynku]]></category>
		<category><![CDATA[Normy budowlane]]></category>
		<category><![CDATA[Normy i standardy]]></category>
		<category><![CDATA[Normy techniczne]]></category>
		<category><![CDATA[Ogrzewanie podłogowe]]></category>
		<category><![CDATA[OZC]]></category>
		<category><![CDATA[Poradnik budowlany]]></category>
		<category><![CDATA[Poradnik inwestora]]></category>
		<category><![CDATA[Poradniki dla inwestorów]]></category>
		<category><![CDATA[Porady dla inwestorów]]></category>
		<category><![CDATA[Porady ekspertów]]></category>
		<category><![CDATA[Strefy klimatyczne]]></category>
		<category><![CDATA[dobór mocy pompy ciepła]]></category>
		<category><![CDATA[norma pn-en 12831]]></category>
		<category><![CDATA[ogrzewanie podłogowe]]></category>
		<category><![CDATA[ozc budynku]]></category>
		<category><![CDATA[projektowa temperatura zewnętrzna]]></category>
		<category><![CDATA[przepływ masowy czynnika]]></category>
		<category><![CDATA[rozstaw rur podłogówki]]></category>
		<category><![CDATA[straty ciepła przez przenikanie]]></category>
		<category><![CDATA[strefa brzegowa podłogówki]]></category>
		<category><![CDATA[strefy klimatyczne w polsce]]></category>
		<guid isPermaLink="false">https://projekt-ogrzewania.pl/?p=6932</guid>

					<description><![CDATA[<p>Planujesz budowę domu lub wymianę instalacji grzewczej i rozważasz zakup uniwersalnego projektu z internetu? Uważaj na pułapki techniczne, które mogą zrujnować Twój budżet eksploatacyjny. Prawidłowo skalkulowane strefy klimatyczne w Polsce a ogrzewanie podłogowe i OZC to absolutny fundament, od którego zależy nie tylko komfort cieplny w czasie siarczystych mrozów, ale także sprawność i żywotność Twojej pompy ciepła. W tym kompleksowym opracowaniu inżynierskim poddajemy szczegółowej analizie wszystkie normy budowlane (PN-EN 12831 oraz PN-82/B-02403), pokazujemy bezlitosne wyliczenia hydrauliczne, algorytmy przepływu masowego oraz udostępniamy interaktywne kalkulatory, które uchronią Cię przed koszmarnymi błędami wykonawczymi.</p>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/">Strefy klimatyczne w Polsce – wyszukiwarka miejscowości, temperatura projektowa i OZC.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<style>
  #rk-climate-guide {
    --rk-navy: #0b2536;
    --rk-navy-2: #12394d;
    --rk-navy-3: #1b465b;
    --rk-cyan: #29c4d7;
    --rk-cyan-dark: #078fb3;
    --rk-cyan-soft: #def7fa;
    --rk-orange: #ff6846;
    --rk-orange-dark: #e44f31;
    --rk-yellow: #f2b526;
    --rk-green: #2fcda1;
    --rk-green-dark: #168267;
    --rk-red: #d7504a;
    --rk-purple: #6963ce;
    --rk-ink: #10283a;
    --rk-copy: #3c5668;
    --rk-muted: #6b8191;
    --rk-line: #d3e2e8;
    --rk-bg: #f3f8fa;
    --rk-white: #ffffff;
    color: var(--rk-ink);
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.62;
    margin: 0 auto;
    max-width: 1360px;
    overflow-wrap: anywhere;
    width: 100%;
  }

  #rk-climate-guide,
  #rk-climate-guide * {
    box-sizing: border-box;
    min-width: 0;
  }

  #rk-climate-guide a {
    color: var(--rk-cyan-dark);
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
  }

  #rk-climate-guide a:hover,
  #rk-climate-guide a:focus-visible {
    color: var(--rk-orange-dark);
  }

  #rk-climate-guide button,
  #rk-climate-guide input,
  #rk-climate-guide select {
    font: inherit;
  }

  #rk-climate-guide button:focus-visible,
  #rk-climate-guide a:focus-visible,
  #rk-climate-guide summary:focus-visible,
  #rk-climate-guide input:focus-visible,
  #rk-climate-guide select:focus-visible {
    outline: 3px solid rgba(41, 196, 215, 0.48);
    outline-offset: 3px;
  }

  #rk-climate-guide img {
    display: block;
    height: auto;
    max-width: 100%;
  }

  #rk-climate-guide .rk-climate-shell {
    background: var(--rk-white);
    border: 1px solid var(--rk-line);
    box-shadow: 0 22px 65px rgba(13, 41, 57, 0.12);
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  /* Kolejność rozdziałów jest ustalona także po przetworzeniu bloku przez WordPress. */
  #rk-climate-guide .rk-climate-hero { order: 1; }
  #rk-climate-guide .rk-climate-shortcuts { order: 2; }
  #rk-climate-guide #rk-climate-answer { order: 3; }
  #rk-climate-guide #rk-climate-locator-section { order: 4; }
  #rk-climate-guide #rk-climate-interpretation { order: 5; }
  #rk-climate-guide #rk-climate-zones { order: 6; }
  #rk-climate-guide #rk-climate-ozc { order: 7; }
  #rk-climate-guide #rk-climate-floor { order: 8; }
  #rk-climate-guide #rk-climate-energy { order: 9; }
  #rk-climate-guide #rk-climate-cost-claim { order: 10; }
  #rk-climate-guide #rk-climate-boundaries { order: 11; }
  #rk-climate-guide #rk-climate-heat-pump { order: 12; }
  #rk-climate-guide #rk-climate-errors { order: 13; }
  #rk-climate-guide #rk-climate-data { order: 14; }
  #rk-climate-guide #rk-climate-final { order: 15; }
  #rk-climate-guide #rk-climate-sources { order: 16; }
  #rk-climate-guide #rk-climate-faq { order: 17; }
  #rk-climate-guide #rk-climate-author { order: 18; }

  #rk-climate-guide .rk-climate-hero {
    background:
      radial-gradient(circle at 89% 111%, rgba(41, 196, 215, 0.24) 0, rgba(41, 196, 215, 0.24) 17%, transparent 17.2%),
      linear-gradient(120deg, #0b2536 0%, #143e52 61%, #0d6576 100%);
    color: var(--rk-white);
    overflow: hidden;
    padding: 62px 58px 56px;
    position: relative;
  }

  #rk-climate-guide .rk-climate-hero::before {
    background: var(--rk-orange);
    border-radius: 50%;
    box-shadow: 0 0 0 9px rgba(255, 104, 70, 0.14);
    content: "";
    height: 12px;
    left: 58px;
    position: absolute;
    top: 43px;
    width: 12px;
  }

  #rk-climate-guide .rk-climate-kicker {
    color: #6ce5ef;
    display: block;
    font-size: 0.77rem;
    font-weight: 900;
    letter-spacing: 0.13em;
    margin: 0 0 19px 28px;
    text-transform: uppercase;
  }

  #rk-climate-guide .rk-climate-hero-title,
  #rk-climate-guide .rk-climate-section-title,
  #rk-climate-guide .rk-climate-cta-title,
  #rk-climate-guide .rk-climate-author-title {
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 900;
    letter-spacing: -0.035em;
    line-height: 1.06;
  }

  #rk-climate-guide .rk-climate-hero-title {
    font-size: clamp(2.4rem, 6vw, 5.25rem);
    margin: 0;
    max-width: 1220px;
  }

  #rk-climate-guide .rk-climate-hero-title span {
    color: #69e7f2;
  }

  #rk-climate-guide .rk-climate-hero-lead {
    color: #e3f0f4;
    font-size: clamp(1.08rem, 2vw, 1.43rem);
    line-height: 1.55;
    margin: 27px 0 0;
    max-width: 1100px;
  }

  #rk-climate-guide .rk-climate-hero-tags,
  #rk-climate-guide .rk-climate-meta,
  #rk-climate-guide .rk-climate-shortcuts {
    display: flex;
    flex-wrap: wrap;
  }

  #rk-climate-guide .rk-climate-hero-tags {
    gap: 10px;
    margin-top: 30px;
  }

  #rk-climate-guide .rk-climate-hero-tags span {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 999px;
    color: #ffffff;
    font-size: 0.82rem;
    font-weight: 800;
    padding: 8px 14px;
  }

  #rk-climate-guide .rk-climate-meta {
    color: #c5d9df;
    font-size: 0.83rem;
    font-weight: 700;
    gap: 12px 24px;
    margin-top: 34px;
  }

  #rk-climate-guide .rk-climate-meta strong {
    color: #ffffff;
  }

  #rk-climate-guide .rk-climate-shortcuts {
    align-items: center;
    background: #ffffff;
    border-bottom: 1px solid var(--rk-line);
    gap: 9px;
    padding: 22px 34px;
    position: static;
  }

  #rk-climate-guide .rk-climate-shortcuts-label {
    color: var(--rk-ink);
    flex: 1 0 100%;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    margin-bottom: 2px;
    text-transform: uppercase;
  }

  #rk-climate-guide .rk-climate-shortcuts a {
    background: #f1f6f8;
    border: 1px solid transparent;
    border-radius: 999px;
    color: var(--rk-ink);
    font-size: 0.76rem;
    font-weight: 800;
    line-height: 1.25;
    padding: 8px 12px;
    text-decoration: none;
  }

  #rk-climate-guide .rk-climate-shortcuts a:hover,
  #rk-climate-guide .rk-climate-shortcuts a:focus-visible {
    background: var(--rk-cyan-soft);
    border-color: #91dce5;
    color: #075f78;
  }

  #rk-climate-guide .rk-climate-section {
    padding: 64px 58px;
  }

  #rk-climate-guide .rk-climate-section + .rk-climate-section {
    border-top: 1px solid var(--rk-line);
  }

  #rk-climate-guide .rk-climate-section-soft {
    background: var(--rk-bg);
  }

  #rk-climate-guide .rk-climate-section-dark {
    background: var(--rk-navy);
    color: #ffffff;
  }

  #rk-climate-guide .rk-climate-eyebrow {
    color: var(--rk-cyan-dark);
    display: block;
    font-size: 0.75rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    margin-bottom: 12px;
    text-transform: uppercase;
  }

  #rk-climate-guide .rk-climate-section-dark .rk-climate-eyebrow {
    color: #68e6ef;
  }

  #rk-climate-guide .rk-climate-section-title,
  #rk-climate-guide .rk-climate-author-title {
    color: var(--rk-ink);
    font-size: clamp(2rem, 4vw, 3.65rem);
    margin: 0;
    max-width: 1120px;
  }

  #rk-climate-guide .rk-climate-section-dark .rk-climate-section-title {
    color: #ffffff;
  }

  #rk-climate-guide .rk-climate-lead {
    color: var(--rk-copy);
    font-size: clamp(1.03rem, 1.7vw, 1.25rem);
    line-height: 1.7;
    margin: 22px 0 0;
    max-width: 1140px;
  }

  #rk-climate-guide .rk-climate-copy {
    color: var(--rk-copy);
    margin: 22px 0 0;
  }

  #rk-climate-guide .rk-climate-copy strong,
  #rk-climate-guide .rk-climate-lead strong {
    color: var(--rk-ink);
  }

  #rk-climate-guide .rk-climate-section-dark .rk-climate-lead,
  #rk-climate-guide .rk-climate-section-dark .rk-climate-copy {
    color: #c8dbe2;
  }

  #rk-climate-guide .rk-climate-section-dark .rk-climate-lead strong,
  #rk-climate-guide .rk-climate-section-dark .rk-climate-copy strong {
    color: #ffffff;
  }

  #rk-climate-guide .rk-climate-answer {
    background: linear-gradient(135deg, #e6fafd 0%, #f8fcfd 100%);
    border: 1px solid #9cdfe8;
    border-left: 7px solid var(--rk-cyan);
    border-radius: 18px;
    margin-top: 28px;
    padding: 27px 29px;
  }

  #rk-climate-guide .rk-climate-answer strong {
    color: var(--rk-ink);
    display: block;
    font-size: 1.24rem;
    line-height: 1.4;
  }

  #rk-climate-guide .rk-climate-answer p {
    color: var(--rk-copy);
    margin: 10px 0 0;
  }

  #rk-climate-guide .rk-climate-grid-2,
  #rk-climate-guide .rk-climate-grid-3,
  #rk-climate-guide .rk-climate-grid-4,
  #rk-climate-guide .rk-climate-source-grid,
  #rk-climate-guide .rk-climate-author-facts {
    display: grid;
    gap: 18px;
    margin-top: 30px;
  }

  #rk-climate-guide .rk-climate-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #rk-climate-guide .rk-climate-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #rk-climate-guide .rk-climate-grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  #rk-climate-guide .rk-climate-card {
    background: #ffffff;
    border: 1px solid var(--rk-line);
    border-radius: 17px;
    padding: 24px;
  }

  #rk-climate-guide .rk-climate-section-soft .rk-climate-card {
    background: rgba(255, 255, 255, 0.88);
  }

  #rk-climate-guide .rk-climate-card-number,
  #rk-climate-guide .rk-climate-icon {
    align-items: center;
    background: var(--rk-cyan-soft);
    border-radius: 10px;
    color: #076c85;
    display: inline-flex;
    font-size: 0.82rem;
    font-weight: 900;
    height: 36px;
    justify-content: center;
    margin-bottom: 14px;
    min-width: 36px;
    padding: 0 10px;
  }

  #rk-climate-guide .rk-climate-card h3,
  #rk-climate-guide .rk-climate-card h4 {
    color: var(--rk-ink);
    font-size: 1.12rem;
    line-height: 1.3;
    margin: 0 0 9px;
  }

  #rk-climate-guide .rk-climate-card p {
    color: var(--rk-copy);
    margin: 0;
  }

  #rk-climate-guide .rk-climate-bullets {
    color: var(--rk-copy);
    margin: 20px 0 0;
    padding-left: 22px;
  }

  #rk-climate-guide .rk-climate-bullets li + li {
    margin-top: 9px;
  }

  #rk-climate-guide .rk-climate-note {
    background: #fff6e2;
    border-left: 6px solid var(--rk-yellow);
    border-radius: 14px;
    color: #5b4a1d;
    margin-top: 26px;
    padding: 18px 21px;
  }

  #rk-climate-guide .rk-climate-note p {
    margin: 0;
  }

  #rk-climate-guide .rk-climate-note-good {
    background: #e9faf5;
    border-left-color: var(--rk-green);
    color: #145e4d;
  }

  #rk-climate-guide .rk-climate-note-bad {
    background: #fff0ec;
    border-left-color: var(--rk-orange);
    color: #743425;
  }

  #rk-climate-guide .rk-climate-formula {
    background: #edf8fa;
    border: 1px solid #b4e1e7;
    border-radius: 13px;
    color: #086b82;
    font-family: Consolas, Monaco, monospace;
    font-size: 1rem;
    font-weight: 700;
    margin-top: 20px;
    padding: 15px 18px;
  }

  #rk-climate-guide .rk-climate-table-wrap {
    margin-top: 30px;
    overflow-x: auto;
  }

  #rk-climate-guide table {
    border-collapse: separate;
    border-spacing: 0;
    min-width: 780px;
    width: 100%;
  }

  #rk-climate-guide th {
    background: var(--rk-navy);
    border-bottom: 1px solid #31576a;
    color: #ffffff;
    font-size: 0.78rem;
    letter-spacing: 0.04em;
    padding: 15px 16px;
    text-align: left;
    text-transform: uppercase;
  }

  #rk-climate-guide th:first-child {
    border-radius: 14px 0 0;
  }

  #rk-climate-guide th:last-child {
    border-radius: 0 14px 0 0;
  }

  #rk-climate-guide td {
    background: #ffffff;
    border-bottom: 1px solid var(--rk-line);
    color: var(--rk-copy);
    padding: 16px;
    vertical-align: top;
  }

  #rk-climate-guide tbody tr td:first-child {
    border-left: 1px solid var(--rk-line);
  }

  #rk-climate-guide tbody tr td:last-child {
    border-right: 1px solid var(--rk-line);
  }

  #rk-climate-guide tbody tr:last-child td:first-child {
    border-radius: 0 0 0 14px;
  }

  #rk-climate-guide tbody tr:last-child td:last-child {
    border-radius: 0 0 14px;
  }

  #rk-climate-guide td strong {
    color: var(--rk-ink);
  }

  /* Lokalizator — narzędzie tylko dla tego artykułu */
  #rk-climate-guide .rk-climate-locator {
    background: #102f42;
    border: 1px solid #315a70;
    border-radius: 24px;
    margin-top: 32px;
    overflow: hidden;
  }

  #rk-climate-guide .rk-climate-locator-head {
    border-bottom: 1px solid #315a70;
    padding: 29px;
  }

  #rk-climate-guide .rk-climate-locator-head h3 {
    color: #ffffff;
    font-size: clamp(1.55rem, 3vw, 2.35rem);
    line-height: 1.2;
    margin: 0;
  }

  #rk-climate-guide .rk-climate-locator-head p {
    color: #bad3dc;
    margin: 10px 0 0;
    max-width: 1000px;
  }

  #rk-climate-guide .rk-climate-tool-grid {
    display: grid;
    gap: 24px;
    grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
    padding: 28px;
  }

  #rk-climate-guide .rk-climate-controls,
  #rk-climate-guide .rk-climate-output {
    background: #17394b;
    border: 1px solid #376177;
    border-radius: 18px;
    padding: 23px;
  }

  #rk-climate-guide .rk-climate-controls h4,
  #rk-climate-guide .rk-climate-output h4 {
    color: #ffffff;
    font-size: 1.1rem;
    line-height: 1.35;
    margin: 0 0 17px;
  }

  #rk-climate-guide .rk-climate-field {
    display: block;
    margin-top: 16px;
  }

  #rk-climate-guide .rk-climate-field:first-of-type {
    margin-top: 0;
  }

  #rk-climate-guide .rk-climate-field > span,
  #rk-climate-guide .rk-climate-control-label {
    color: #eaf6f8;
    display: block;
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1.35;
    margin-bottom: 7px;
  }

  #rk-climate-guide .rk-climate-input-wrap {
    position: relative;
  }

  #rk-climate-guide .rk-climate-field input,
  #rk-climate-guide .rk-climate-field select {
    background: #ffffff;
    border: 1px solid #b8ccd5;
    border-radius: 10px;
    color: var(--rk-ink);
    min-height: 49px;
    padding: 10px 12px;
    width: 100%;
  }

  #rk-climate-guide .rk-climate-suggestions {
    background: #ffffff;
    border: 1px solid #b8ccd5;
    border-radius: 10px;
    box-shadow: 0 15px 30px rgba(7, 27, 39, 0.23);
    display: none;
    left: 0;
    margin: 6px 0 0;
    max-height: 318px;
    overflow-y: auto;
    padding: 5px;
    position: absolute;
    right: 0;
    top: 100%;
    z-index: 20;
  }

  #rk-climate-guide .rk-climate-suggestions.is-open {
    display: block;
  }

  #rk-climate-guide .rk-climate-suggestion {
    background: transparent;
    border: 0;
    border-radius: 8px;
    color: var(--rk-ink);
    cursor: pointer;
    display: block;
    padding: 10px 11px;
    text-align: left;
    width: 100%;
  }

  #rk-climate-guide .rk-climate-suggestion:hover,
  #rk-climate-guide .rk-climate-suggestion.is-active {
    background: var(--rk-cyan-soft);
    color: #075f78;
  }

  #rk-climate-guide .rk-climate-suggestion strong {
    display: block;
    font-size: 0.91rem;
  }

  #rk-climate-guide .rk-climate-suggestion small {
    color: var(--rk-muted);
    display: block;
    font-size: 0.72rem;
    margin-top: 2px;
  }

  #rk-climate-guide .rk-climate-no-result {
    color: var(--rk-copy);
    font-size: 0.84rem;
    padding: 12px;
  }

  #rk-climate-guide .rk-climate-two-fields {
    display: grid;
    gap: 13px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #rk-climate-guide .rk-climate-tool-help {
    color: #9fbdc8;
    font-size: 0.75rem;
    line-height: 1.5;
    margin: 9px 0 0;
  }

  #rk-climate-guide .rk-climate-tool-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 19px;
  }

  #rk-climate-guide .rk-climate-button,
  #rk-climate-guide .rk-climate-button-secondary {
    border-radius: 11px;
    cursor: pointer;
    font-weight: 900;
    min-height: 48px;
    padding: 11px 17px;
  }

  #rk-climate-guide .rk-climate-button {
    background: var(--rk-orange);
    border: 1px solid var(--rk-orange);
    color: #ffffff;
  }

  #rk-climate-guide .rk-climate-button:hover {
    background: var(--rk-orange-dark);
  }

  #rk-climate-guide .rk-climate-button-secondary {
    background: transparent;
    border: 1px solid #5d7c8d;
    color: #ffffff;
  }

  #rk-climate-guide .rk-climate-manual {
    border-top: 1px solid #315a70;
    margin-top: 20px;
    padding-top: 19px;
  }

  #rk-climate-guide .rk-climate-manual summary {
    color: #8debf2;
    cursor: pointer;
    font-size: 0.83rem;
    font-weight: 900;
  }

  #rk-climate-guide .rk-climate-manual-inner {
    margin-top: 13px;
  }

  #rk-climate-guide .rk-climate-placeholder {
    align-items: center;
    color: #b9d0d9;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 260px;
    text-align: center;
  }

  #rk-climate-guide .rk-climate-placeholder-mark {
    align-items: center;
    background: #21536a;
    border: 1px solid #467186;
    border-radius: 50%;
    color: #74e8ef;
    display: inline-flex;
    font-size: 1.65rem;
    font-weight: 900;
    height: 70px;
    justify-content: center;
    margin-bottom: 16px;
    width: 70px;
  }

  #rk-climate-guide .rk-climate-result {
    display: none;
  }

  #rk-climate-guide .rk-climate-result.is-visible {
    display: block;
  }

  #rk-climate-guide .rk-climate-result-place {
    color: #ffffff;
    font-size: clamp(1.35rem, 2.7vw, 2rem);
    font-weight: 900;
    line-height: 1.2;
    margin: 0;
  }

  #rk-climate-guide .rk-climate-result-region {
    color: #aecaD5;
    font-size: 0.83rem;
    margin: 5px 0 0;
  }

  #rk-climate-guide .rk-climate-result-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 20px;
  }

  #rk-climate-guide .rk-climate-result-tile {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 13px;
    padding: 16px;
  }

  #rk-climate-guide .rk-climate-result-tile span {
    color: #9fc0cb;
    display: block;
    font-size: 0.69rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }

  #rk-climate-guide .rk-climate-result-tile strong {
    color: #ffffff;
    display: block;
    font-size: 1.32rem;
    line-height: 1.25;
    margin-top: 5px;
  }

  #rk-climate-guide .rk-climate-result-tile.is-highlight {
    background: rgba(41, 196, 215, 0.14);
    border-color: rgba(105, 231, 242, 0.45);
  }

  #rk-climate-guide .rk-climate-result-tile.is-highlight strong {
    color: #73e8f1;
  }

  #rk-climate-guide .rk-climate-result-note {
    background: #fff8e8;
    border-left: 5px solid var(--rk-yellow);
    border-radius: 12px;
    color: #654f18;
    margin-top: 16px;
    padding: 15px 17px;
  }

  #rk-climate-guide .rk-climate-result-note p {
    margin: 0;
  }

  #rk-climate-guide .rk-climate-result-scope {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 16px;
  }

  #rk-climate-guide .rk-climate-scope-card {
    background: #ffffff;
    border-radius: 12px;
    padding: 15px;
  }

  #rk-climate-guide .rk-climate-scope-card strong {
    display: block;
    font-size: 0.78rem;
    letter-spacing: 0.05em;
    margin-bottom: 6px;
    text-transform: uppercase;
  }

  #rk-climate-guide .rk-climate-scope-card p {
    color: var(--rk-copy);
    font-size: 0.83rem;
    line-height: 1.55;
    margin: 0;
  }

  #rk-climate-guide .rk-climate-scope-card.is-use strong {
    color: var(--rk-green-dark);
  }

  #rk-climate-guide .rk-climate-scope-card.is-limit strong {
    color: #a83d2d;
  }

  #rk-climate-guide .rk-climate-scenario {
    background: #0d293a;
    border-top: 1px solid #315a70;
    padding: 28px;
  }

  #rk-climate-guide .rk-climate-scenario-head h3 {
    color: #ffffff;
    font-size: clamp(1.35rem, 2.7vw, 2rem);
    line-height: 1.2;
    margin: 0;
  }

  #rk-climate-guide .rk-climate-scenario-head p {
    color: #b8d0d9;
    margin: 8px 0 0;
  }

  #rk-climate-guide .rk-climate-scenario-controls {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 21px;
  }

  #rk-climate-guide .rk-climate-scenario-controls label span {
    color: #eaf6f8;
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    margin-bottom: 7px;
  }

  #rk-climate-guide .rk-climate-scenario-controls input,
  #rk-climate-guide .rk-climate-scenario-controls select {
    background: #ffffff;
    border: 1px solid #b8ccd5;
    border-radius: 10px;
    color: var(--rk-ink);
    min-height: 48px;
    padding: 10px 12px;
    width: 100%;
  }

  #rk-climate-guide .rk-climate-scenario-result {
    background: #ffffff;
    border-left: 7px solid var(--rk-cyan);
    border-radius: 15px;
    margin-top: 20px;
    padding: 20px;
  }

  #rk-climate-guide .rk-climate-scenario-result strong {
    color: var(--rk-ink);
    display: block;
    font-size: 1.12rem;
  }

  #rk-climate-guide .rk-climate-scenario-result p {
    color: var(--rk-copy);
    margin: 7px 0 0;
  }

  #rk-climate-guide .rk-climate-chart-wrap {
    background: #17394b;
    border: 1px solid #376177;
    border-radius: 18px;
    margin-top: 24px;
    padding: 23px;
  }

  #rk-climate-guide .rk-climate-chart-title {
    color: #ffffff;
    font-size: 1rem;
    font-weight: 900;
    margin: 0;
  }

  #rk-climate-guide .rk-climate-chart-subtitle {
    color: #aac6d0;
    font-size: 0.8rem;
    margin: 4px 0 0;
  }

  #rk-climate-guide .rk-climate-chart {
    align-items: end;
    display: grid;
    gap: 11px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin-top: 24px;
    min-height: 280px;
  }

  #rk-climate-guide .rk-climate-bar-item {
    align-items: stretch;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: flex-end;
    text-align: center;
  }

  #rk-climate-guide .rk-climate-bar-value {
    color: #dff8fa;
    font-size: 0.78rem;
    font-weight: 900;
    margin-bottom: 7px;
  }

  #rk-climate-guide .rk-climate-bar-track {
    align-items: flex-end;
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 11px 11px 5px 5px;
    display: flex;
    height: 205px;
    overflow: hidden;
  }

  #rk-climate-guide .rk-climate-bar-fill {
    background: linear-gradient(180deg, #69e7f2 0%, #1199b5 100%);
    border-radius: 9px 9px 3px 3px;
    height: var(--rk-desktop-height, 50%);
    min-height: 24px;
    width: 100%;
  }

  #rk-climate-guide .rk-climate-bar-item.is-selected .rk-climate-bar-fill {
    background: linear-gradient(180deg, #ffad50 0%, #ff6846 100%);
  }

  #rk-climate-guide .rk-climate-bar-item.is-reference .rk-climate-bar-track {
    border-color: #77e8ef;
  }

  #rk-climate-guide .rk-climate-bar-label {
    color: #ffffff;
    font-size: 0.8rem;
    font-weight: 900;
    line-height: 1.35;
    margin-top: 9px;
  }

  #rk-climate-guide .rk-climate-bar-label small {
    color: #aecaD5;
    display: block;
    font-size: 0.69rem;
    font-weight: 700;
    margin-top: 2px;
  }

  #rk-climate-guide .rk-climate-tool-disclaimer {
    color: #90adb9;
    font-size: 0.75rem;
    line-height: 1.55;
    margin: 17px 0 0;
  }

  #rk-climate-guide .rk-climate-cta {
    background:
      radial-gradient(circle at 93% 120%, rgba(41, 196, 215, 0.22) 0, rgba(41, 196, 215, 0.22) 19%, transparent 19.2%),
      linear-gradient(125deg, #0b2536 0%, #153e51 62%, #0d6272 100%);
    border-radius: 21px;
    color: #ffffff;
    margin-top: 34px;
    overflow: hidden;
    padding: 36px;
  }

  #rk-climate-guide .rk-climate-cta-title {
    color: #ffffff;
    font-size: clamp(1.7rem, 3.3vw, 2.8rem);
    margin: 0;
    max-width: 1000px;
  }

  #rk-climate-guide .rk-climate-cta p {
    color: #cee0e6;
    margin: 14px 0 0;
    max-width: 1000px;
  }

  #rk-climate-guide .rk-climate-cta-button {
    background: var(--rk-orange);
    border-radius: 12px;
    box-shadow: 0 12px 25px rgba(255, 104, 70, 0.24);
    color: #ffffff;
    display: inline-block;
    font-weight: 900;
    margin-top: 22px;
    padding: 14px 20px;
    text-decoration: none;
  }

  #rk-climate-guide .rk-climate-cta-button:hover,
  #rk-climate-guide .rk-climate-cta-button:focus-visible {
    background: #ffffff;
    color: var(--rk-orange-dark);
  }

  #rk-climate-guide .rk-climate-link-disclosure {
    color: #a9c4ce;
    display: block;
    font-size: 0.75rem;
    margin-top: 12px;
  }

  #rk-climate-guide .rk-climate-final {
    background: linear-gradient(180deg, #f4fafb 0%, #ffffff 100%);
  }

  #rk-climate-guide .rk-climate-source-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #rk-climate-guide .rk-climate-source-card {
    background: #f2f7f9;
    border: 1px solid #cfe0e7;
    border-radius: 15px;
    padding: 20px;
  }

  #rk-climate-guide .rk-climate-source-card a {
    color: var(--rk-cyan-dark);
    font-size: 1rem;
    font-weight: 900;
  }

  #rk-climate-guide .rk-climate-source-card p {
    color: var(--rk-copy);
    margin: 8px 0 0;
  }

  #rk-climate-guide .rk-climate-responsibility {
    background: #fff0eb;
    border-left: 6px solid var(--rk-orange);
    border-radius: 14px;
    color: #613427;
    margin-top: 26px;
    padding: 19px 22px;
  }

  #rk-climate-guide .rk-climate-responsibility p {
    margin: 0;
  }

  #rk-climate-guide .rk-climate-faq {
    display: grid;
    gap: 12px;
    margin-top: 30px;
  }

  #rk-climate-guide .rk-climate-faq details {
    background: #ffffff;
    border: 1px solid var(--rk-line);
    border-radius: 14px;
    overflow: hidden;
  }

  #rk-climate-guide .rk-climate-faq summary {
    color: var(--rk-ink);
    cursor: pointer;
    font-weight: 900;
    list-style: none;
    padding: 19px 52px 19px 20px;
    position: relative;
  }

  #rk-climate-guide .rk-climate-faq summary::-webkit-details-marker {
    display: none;
  }

  #rk-climate-guide .rk-climate-faq summary::after {
    color: var(--rk-cyan-dark);
    content: "+";
    font-size: 1.55rem;
    font-weight: 700;
    position: absolute;
    right: 20px;
    top: 12px;
  }

  #rk-climate-guide .rk-climate-faq details[open] summary::after {
    content: "−";
  }

  #rk-climate-guide .rk-climate-faq-answer {
    border-top: 1px solid var(--rk-line);
    color: var(--rk-copy);
    padding: 18px 20px;
  }

  #rk-climate-guide .rk-climate-faq-answer p {
    margin: 0;
  }

  #rk-climate-guide .rk-climate-author {
    background: #eef6f8;
    border-top: 1px solid var(--rk-line);
    padding: 64px 58px;
  }

  #rk-climate-guide .rk-climate-author-layout {
    background: #ffffff;
    border: 1px solid #cbdde5;
    border-radius: 21px;
    display: grid;
    grid-template-columns: 290px minmax(0, 1fr);
    overflow: hidden;
  }

  #rk-climate-guide .rk-climate-author-side {
    align-items: center;
    background: var(--rk-navy);
    color: #ffffff;
    display: flex;
    flex-direction: column;
    padding: 35px 25px;
    text-align: center;
  }

  #rk-climate-guide .rk-climate-author-photo {
    background: #ffffff;
    border: 6px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    overflow: hidden;
    width: 158px;
  }

  #rk-climate-guide .rk-climate-author-name {
    font-size: 1.25rem;
    font-weight: 900;
    margin-top: 20px;
  }

  #rk-climate-guide .rk-climate-author-role {
    color: #bcd2db;
    font-size: 0.82rem;
    margin: 8px 0 0;
  }

  #rk-climate-guide .rk-climate-author-social {
    display: flex;
    gap: 10px;
    margin-top: 21px;
  }

  #rk-climate-guide .rk-climate-author-social a {
    align-items: center;
    border: 1px solid #497185;
    border-radius: 50%;
    color: #d8e9ee;
    display: inline-flex;
    height: 42px;
    justify-content: center;
    text-decoration: none;
    width: 42px;
  }

  #rk-climate-guide .rk-climate-author-social a:hover {
    background: var(--rk-cyan);
    color: var(--rk-navy);
  }

  #rk-climate-guide .rk-climate-author-main {
    padding: 37px;
  }

  #rk-climate-guide .rk-climate-author-title {
    font-size: clamp(1.85rem, 3.5vw, 3rem);
  }

  #rk-climate-guide .rk-climate-author-quote {
    background: #f7fbfc;
    border: 1px solid #cfe0e7;
    border-left: 6px solid var(--rk-cyan);
    border-radius: 14px;
    color: var(--rk-ink);
    font-size: 1.04rem;
    font-style: italic;
    font-weight: 700;
    line-height: 1.7;
    margin-top: 24px;
    padding: 20px 22px;
  }

  #rk-climate-guide .rk-climate-author-main > p {
    color: var(--rk-copy);
    margin: 18px 0 0;
  }

  #rk-climate-guide .rk-climate-author-facts {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #rk-climate-guide .rk-climate-author-fact {
    background: #eef7f9;
    border: 1px solid #d2e4e9;
    border-radius: 13px;
    color: var(--rk-copy);
    font-size: 0.84rem;
    padding: 15px;
  }

  #rk-climate-guide .rk-climate-author-fact strong {
    color: var(--rk-cyan-dark);
    display: block;
    font-size: 0.73rem;
    letter-spacing: 0.06em;
    margin-bottom: 5px;
    text-transform: uppercase;
  }

  #rk-climate-guide .rk-climate-visually-hidden {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }

  @media (max-width: 1050px) {
    #rk-climate-guide .rk-climate-grid-4 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #rk-climate-guide .rk-climate-result-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #rk-climate-guide .rk-climate-scenario-controls {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (max-width: 860px) {
    #rk-climate-guide .rk-climate-hero,
    #rk-climate-guide .rk-climate-section,
    #rk-climate-guide .rk-climate-author {
      padding-left: 28px;
      padding-right: 28px;
    }

    #rk-climate-guide .rk-climate-hero::before {
      left: 28px;
    }

    #rk-climate-guide .rk-climate-shortcuts {
      padding-left: 22px;
      padding-right: 22px;
    }

    #rk-climate-guide .rk-climate-tool-grid {
      grid-template-columns: minmax(0, 1fr);
    }

    #rk-climate-guide .rk-climate-author-layout {
      grid-template-columns: minmax(0, 1fr);
    }

    #rk-climate-guide .rk-climate-author-side {
      padding-bottom: 28px;
    }
  }

  @media (max-width: 660px) {
    #rk-climate-guide .rk-climate-hero {
      padding-bottom: 42px;
      padding-top: 52px;
    }

    #rk-climate-guide .rk-climate-section,
    #rk-climate-guide .rk-climate-author {
      padding-bottom: 46px;
      padding-top: 46px;
    }

    #rk-climate-guide .rk-climate-grid-2,
    #rk-climate-guide .rk-climate-grid-3,
    #rk-climate-guide .rk-climate-grid-4,
    #rk-climate-guide .rk-climate-source-grid,
    #rk-climate-guide .rk-climate-author-facts,
    #rk-climate-guide .rk-climate-two-fields,
    #rk-climate-guide .rk-climate-result-grid,
    #rk-climate-guide .rk-climate-result-scope,
    #rk-climate-guide .rk-climate-scenario-controls {
      grid-template-columns: minmax(0, 1fr);
    }

    #rk-climate-guide .rk-climate-locator,
    #rk-climate-guide .rk-climate-cta {
      border-radius: 17px;
    }

    #rk-climate-guide .rk-climate-locator-head,
    #rk-climate-guide .rk-climate-tool-grid,
    #rk-climate-guide .rk-climate-scenario,
    #rk-climate-guide .rk-climate-cta {
      padding: 20px;
    }

    #rk-climate-guide .rk-climate-controls,
    #rk-climate-guide .rk-climate-output,
    #rk-climate-guide .rk-climate-chart-wrap {
      padding: 18px;
    }

    #rk-climate-guide .rk-climate-tool-actions {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
    }

    #rk-climate-guide .rk-climate-button,
    #rk-climate-guide .rk-climate-button-secondary,
    #rk-climate-guide .rk-climate-cta-button {
      text-align: center;
      width: 100%;
    }

    #rk-climate-guide .rk-climate-chart {
      display: block;
      min-height: 0;
    }

    #rk-climate-guide .rk-climate-bar-item {
      display: grid;
      gap: 8px;
      grid-template-columns: 66px minmax(0, 1fr) 88px;
      margin-top: 13px;
      text-align: left;
    }

    #rk-climate-guide .rk-climate-bar-value {
      align-self: center;
      margin: 0;
      order: 3;
      text-align: right;
    }

    #rk-climate-guide .rk-climate-bar-track {
      align-items: stretch;
      align-self: center;
      height: 25px;
      order: 2;
    }

    #rk-climate-guide .rk-climate-bar-fill {
      border-radius: 4px;
      height: 100%;
      min-height: 0;
      width: var(--rk-mobile-width, 50%);
    }

    #rk-climate-guide .rk-climate-bar-label {
      align-self: center;
      margin: 0;
      order: 1;
    }

    #rk-climate-guide .rk-climate-bar-label small {
      display: none;
    }

    #rk-climate-guide .rk-climate-table-wrap {
      overflow: visible;
    }

    #rk-climate-guide table,
    #rk-climate-guide thead,
    #rk-climate-guide tbody,
    #rk-climate-guide tr,
    #rk-climate-guide th,
    #rk-climate-guide td {
      display: block;
      min-width: 0;
      width: 100%;
    }

    #rk-climate-guide thead {
      clip: rect(0 0 0 0);
      clip-path: inset(50%);
      height: 1px;
      overflow: hidden;
      position: absolute;
      white-space: nowrap;
      width: 1px;
    }

    #rk-climate-guide tbody {
      display: grid;
      gap: 14px;
    }

    #rk-climate-guide tbody tr {
      background: #ffffff;
      border: 1px solid var(--rk-line);
      border-radius: 14px;
      overflow: hidden;
    }

    #rk-climate-guide td,
    #rk-climate-guide tbody tr td:first-child,
    #rk-climate-guide tbody tr td:last-child {
      border: 0;
      border-bottom: 1px solid #e1ebef;
      border-radius: 0;
      padding: 13px 15px;
    }

    #rk-climate-guide td:last-child {
      border-bottom: 0;
    }

    #rk-climate-guide td::before {
      color: var(--rk-cyan-dark);
      content: attr(data-label);
      display: block;
      font-size: 0.69rem;
      font-weight: 900;
      letter-spacing: 0.07em;
      margin-bottom: 4px;
      text-transform: uppercase;
    }

    #rk-climate-guide .rk-climate-author-main {
      padding: 25px 20px;
    }
  }

  @media (max-width: 430px) {
    #rk-climate-guide .rk-climate-hero,
    #rk-climate-guide .rk-climate-section,
    #rk-climate-guide .rk-climate-author {
      padding-left: 18px;
      padding-right: 18px;
    }

    #rk-climate-guide .rk-climate-hero::before {
      left: 18px;
    }

    #rk-climate-guide .rk-climate-shortcuts {
      padding-left: 14px;
      padding-right: 14px;
    }

    #rk-climate-guide .rk-climate-shortcuts a {
      flex: 1 1 calc(50% - 9px);
      text-align: center;
    }

    #rk-climate-guide .rk-climate-hero-title {
      font-size: 2.2rem;
    }

    #rk-climate-guide .rk-climate-section-title {
      font-size: 1.9rem;
    }

    #rk-climate-guide .rk-climate-bar-item {
      grid-template-columns: 54px minmax(0, 1fr) 74px;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    #rk-climate-guide *,
    #rk-climate-guide *::before,
    #rk-climate-guide *::after {
      scroll-behavior: auto;
      transition-duration: 0.01ms;
    }
  }
</style>

<article id="rk-climate-guide" aria-labelledby="rk-climate-visual-title">
  <div class="rk-climate-shell">
    <header class="rk-climate-hero">
      <span class="rk-climate-kicker">Lokalizacja · temperatura projektowa · OZC</span>
      <div class="rk-climate-hero-title" id="rk-climate-visual-title">Strefy klimatyczne w Polsce: <span>sprawdź miejscowość, zanim policzysz ogrzewanie</span></div>
      <p class="rk-climate-hero-lead">Strefa określa projektową temperaturę zewnętrzną, ale nie podaje gotowej mocy domu, rozstawu rur ani kosztu ogrzewania. Wyszukaj miejscowość, porównaj pięć stref i zobacz, jak lokalizacja staje się jedną z danych wejściowych do OZC.</p>
      <div class="rk-climate-hero-tags" aria-label="Zakres poradnika">
        <span>291 miejscowości</span>
        <span>strefy I–V</span>
        <span>−16°C do −24°C</span>
        <span>projektowe obciążenie cieplne</span>
        <span>podłogówka i pompa ciepła</span>
      </div>
      <div class="rk-climate-meta">
        <span>Autor: <strong>Robert Kucharski</strong></span>
        <span>Czas czytania: <strong>około 22 minuty</strong></span>
        <span>Aktualizacja techniczna: <strong>15 września 2026 r.</strong></span>
      </div>
    </header>

    <nav class="rk-climate-shortcuts" aria-label="Na skróty — wszystkie sekcje artykułu">
      <span class="rk-climate-shortcuts-label">Na skróty</span>
      <a href="#rk-climate-answer">Szybka odpowiedź</a>
      <a href="#rk-climate-locator-section">Wyszukiwarka</a>
      <a href="#rk-climate-interpretation">Interpretacja wyniku</a>
      <a href="#rk-climate-zones">Pięć stref</a>
      <a href="#rk-climate-ozc">Strefa a OZC</a>
      <a href="#rk-climate-floor">Strefa a podłogówka</a>
      <a href="#rk-climate-energy">Moc, energia i koszt</a>
      <a href="#rk-climate-cost-claim">Czy naprawdę 6000 zł?</a>
      <a href="#rk-climate-boundaries">Granice i góry</a>
      <a href="#rk-climate-heat-pump">Pompa ciepła</a>
      <a href="#rk-climate-errors">Najczęstsze błędy</a>
      <a href="#rk-climate-data">Dane dla projektanta</a>
      <a href="#rk-climate-final">Podsumowanie</a>
      <a href="#rk-climate-sources">Źródła</a>
      <a href="#rk-climate-faq">FAQ</a>
      <a href="#rk-climate-author">Autor</a>
    </nav>

    <section class="rk-climate-section" id="rk-climate-answer">
      <span class="rk-climate-eyebrow">Odpowiedź w 60 sekund</span>
      <h2 class="rk-climate-section-title">Co naprawdę mówi strefa klimatyczna?</h2>
      <p class="rk-climate-lead"><strong>Strefa klimatyczna wskazuje projektową temperaturę zewnętrzną przyjmowaną do obliczeń obciążenia cieplnego.</strong> Jest ważna, ponieważ wpływa na różnicę temperatur między wnętrzem a otoczeniem, ale pozostaje tylko jednym z parametrów całego modelu budynku.</p>
      <div class="rk-climate-answer">
        <strong>Polski podział stosowany w obliczeniach ogrzewania obejmuje pięć stref z temperaturami od −16°C do −24°C.</strong>
        <p>Metoda obliczeniowa musi następnie uwzględnić przegrody, mostki cieplne, wentylację, straty do gruntu, temperatury pomieszczeń i sposób użytkowania. Dopiero z obciążenia każdego pomieszczenia projektuje się ogrzewanie podłogowe.</p>
      </div>
      <div class="rk-climate-grid-3">
        <article class="rk-climate-card">
          <span class="rk-climate-icon">1</span>
          <h3>Strefa daje temperaturę</h3>
          <p>Dla stref I–V przyjmuje się odpowiednio −16, −18, −20, −22 i −24°C jako warunki projektowe ogrzewania.</p>
        </article>
        <article class="rk-climate-card">
          <span class="rk-climate-icon">2</span>
          <h3>OZC daje moc</h3>
          <p>Projektowe obciążenie cieplne powstaje po połączeniu klimatu z rzeczywistą konstrukcją i wentylacją budynku.</p>
        </article>
        <article class="rk-climate-card">
          <span class="rk-climate-icon">3</span>
          <h3>Projekt daje instalację</h3>
          <p>Rozstawy, pętle, przepływy i temperaturę zasilania ustala się dla pomieszczeń, a nie dla samego numeru strefy.</p>
        </article>
      </div>
      <p class="rk-climate-copy">Jeżeli chcesz poznać pełny ciąg obliczeń, zacznij od poradników o <a href="https://projekt-ogrzewania.pl/projektowe-obciazenie-cieplne-ozc/">projektowym obciążeniu cieplnym OZC</a> oraz o tym, <a href="https://projekt-ogrzewania.pl/jak-oblicza-sie-straty-cieplne-w-budynkach/">jak oblicza się straty ciepła w budynku</a>.</p>
    </section>

    <section class="rk-climate-section rk-climate-section-dark" id="rk-climate-locator-section">
      <span class="rk-climate-eyebrow">Narzędzie przygotowane dla tego poradnika</span>
      <h2 class="rk-climate-section-title">Wyszukiwarka strefy klimatycznej dla miejscowości</h2>
      <p class="rk-climate-lead">Baza obejmuje 291 miejscowości. Wpisz nazwę z polskimi znakami lub bez nich. Wynik pokaże strefę, projektową temperaturę zewnętrzną i różnicę temperatur. Dodatkowy moduł porówna ten sam budynek między strefami, ale nie będzie udawał pełnego OZC.</p>

      <div class="rk-climate-locator" id="rk-climate-locator">
        <div class="rk-climate-locator-head">
          <h3>Sprawdź warunki obliczeniowe lokalizacji</h3>
          <p>Wybierz miejscowość z listy. Dla terenów granicznych i górskich wynik otrzyma dodatkowe ostrzeżenie o konieczności sprawdzenia dokładnego położenia.</p>
        </div>

        <div class="rk-climate-tool-grid">
          <div class="rk-climate-controls">
            <h4>Dane lokalizacji i wnętrza</h4>
            <div class="rk-climate-field">
              <label class="rk-climate-control-label" for="rk-climate-city-input">Miejscowość</label>
              <div class="rk-climate-input-wrap">
                <input id="rk-climate-city-input" type="text" inputmode="search" autocomplete="off" role="combobox" aria-autocomplete="list" aria-expanded="false" aria-controls="rk-climate-suggestions" placeholder="np. Łódź, lodz, Suwałki">
                <div class="rk-climate-suggestions" id="rk-climate-suggestions" role="listbox" aria-label="Pasujące miejscowości"></div>
              </div>
            </div>
            <p class="rk-climate-tool-help">Wybierz pozycję z podpowiedzi. Samo wpisanie tekstu nie przypisuje strefy.</p>

            <div class="rk-climate-two-fields">
              <label class="rk-climate-field" for="rk-climate-indoor-temp">
                <span>Projektowa temperatura wnętrza</span>
                <select id="rk-climate-indoor-temp">
                  <option value="18">18°C</option>
                  <option value="19">19°C</option>
                  <option value="20" selected="">20°C</option>
                  <option value="21">21°C</option>
                  <option value="22">22°C</option>
                  <option value="23">23°C</option>
                  <option value="24">24°C</option>
                </select>
              </label>
              <label class="rk-climate-field" for="rk-climate-reference-zone">
                <span>Strefa odniesienia</span>
                <select id="rk-climate-reference-zone">
                  <option value="1">I / −16°C</option>
                  <option value="2">II / −18°C</option>
                  <option value="3" selected="">III / −20°C</option>
                  <option value="4">IV / −22°C</option>
                  <option value="5">V / −24°C</option>
                </select>
              </label>
            </div>

            <div class="rk-climate-tool-actions">
              <button class="rk-climate-button" id="rk-climate-show-result" type="button">Pokaż wynik</button>
              <button class="rk-climate-button-secondary" id="rk-climate-reset" type="button">Wyczyść</button>
            </div>

            <details class="rk-climate-manual">
              <summary>Nie ma miejscowości? Wybierz strefę ręcznie</summary>
              <div class="rk-climate-manual-inner">
                <label class="rk-climate-field" for="rk-climate-manual-zone">
                  <span>Strefa potwierdzona w dokumentacji projektu</span>
                  <select id="rk-climate-manual-zone">
                    <option value="">Wybierz</option>
                    <option value="1">Strefa I / −16°C</option>
                    <option value="2">Strefa II / −18°C</option>
                    <option value="3">Strefa III / −20°C</option>
                    <option value="4">Strefa IV / −22°C</option>
                    <option value="5">Strefa V / −24°C</option>
                  </select>
                </label>
                <button class="rk-climate-button-secondary" id="rk-climate-use-manual" type="button">Użyj wybranej strefy</button>
              </div>
            </details>
          </div>

          <div class="rk-climate-output">
            <div class="rk-climate-placeholder" id="rk-climate-placeholder">
              <span class="rk-climate-placeholder-mark" aria-hidden="true">I–V</span>
              <h4>Wybierz miejscowość</h4>
              <p>Wynik nie poda gotowej mocy domu. Pokaże właściwy punkt startowy do obliczeń.</p>
            </div>

            <div class="rk-climate-result" id="rk-climate-result" aria-live="polite">
              <p class="rk-climate-result-place" id="rk-climate-result-place">—</p>
              <p class="rk-climate-result-region" id="rk-climate-result-region">—</p>
              <div class="rk-climate-result-grid">
                <div class="rk-climate-result-tile is-highlight"><span>Strefa</span><strong id="rk-climate-result-zone">—</strong></div>
                <div class="rk-climate-result-tile"><span>Temperatura zewnętrzna</span><strong id="rk-climate-result-outdoor">—</strong></div>
                <div class="rk-climate-result-tile"><span>Temperatura wnętrza</span><strong id="rk-climate-result-indoor">—</strong></div>
                <div class="rk-climate-result-tile"><span>Różnica ΔT</span><strong id="rk-climate-result-delta">—</strong></div>
                <div class="rk-climate-result-tile"><span>Względem strefy odniesienia</span><strong id="rk-climate-result-relative">—</strong></div>
                <div class="rk-climate-result-tile"><span>Status lokalizacji</span><strong id="rk-climate-result-status">—</strong></div>
              </div>
              <div class="rk-climate-result-note" id="rk-climate-location-note"><p>—</p></div>
              <div class="rk-climate-result-scope">
                <div class="rk-climate-scope-card is-use"><strong>Do czego użyć wyniku</strong><p>Jako projektowej temperatury zewnętrznej i punktu wejścia do obliczeń obciążenia cieplnego.</p></div>
                <div class="rk-climate-scope-card is-limit"><strong>Czego wynik nie wyznacza</strong><p>Rozstawu rur, temperatury zasilania, długości pętli, mocy źródła ani rocznego rachunku.</p></div>
              </div>
            </div>
          </div>
        </div>

        <div class="rk-climate-scenario">
          <div class="rk-climate-scenario-head">
            <h3>Porównaj ten sam budynek między strefami</h3>
            <p>Jeżeli masz prawdziwy wynik OZC dla strefy odniesienia, wpisz go opcjonalnie. Narzędzie pokaże prosty scenariusz oparty na stosunku ΔT — nie nowe obliczenie OZC.</p>
          </div>
          <div class="rk-climate-scenario-controls">
            <label for="rk-climate-reference-load"><span>Znane obciążenie w strefie odniesienia [kW]</span><input id="rk-climate-reference-load" type="number" min="0.1" max="100" step="0.1" inputmode="decimal" placeholder="np. 6,0"></label>
            <label for="rk-climate-scenario-reference"><span>Strefa znanego wyniku</span><select id="rk-climate-scenario-reference"><option value="1">I / −16°C</option><option value="2">II / −18°C</option><option value="3" selected="">III / −20°C</option><option value="4">IV / −22°C</option><option value="5">V / −24°C</option></select></label>
            <label for="rk-climate-scenario-target"><span>Strefa porównywana</span><select id="rk-climate-scenario-target"><option value="1">I / −16°C</option><option value="2">II / −18°C</option><option value="3">III / −20°C</option><option value="4">IV / −22°C</option><option value="5" selected="">V / −24°C</option></select></label>
          </div>
          <div class="rk-climate-scenario-result" id="rk-climate-scenario-result" aria-live="polite">
            <strong id="rk-climate-scenario-title">Wybierz miejscowość albo ustaw strefy porównania</strong>
            <p id="rk-climate-scenario-copy">Porównanie pokaże zmianę ΔT. Moc pojawi się tylko po podaniu wyniku z rzeczywistych obliczeń.</p>
          </div>

          <div class="rk-climate-chart-wrap">
            <p class="rk-climate-chart-title">Pięć stref przy wybranej temperaturze wnętrza</p>
            <p class="rk-climate-chart-subtitle">Wysokość słupka pokazuje ΔT, nie roczne zużycie energii.</p>
            <div class="rk-climate-chart" id="rk-climate-chart" role="img" aria-label="Porównanie różnicy temperatur dla pięciu stref klimatycznych">
              <div class="rk-climate-bar-item" data-zone="1"><span class="rk-climate-bar-value">—</span><div class="rk-climate-bar-track"><div class="rk-climate-bar-fill"></div></div><span class="rk-climate-bar-label">Strefa I<small>−16°C</small></span></div>
              <div class="rk-climate-bar-item" data-zone="2"><span class="rk-climate-bar-value">—</span><div class="rk-climate-bar-track"><div class="rk-climate-bar-fill"></div></div><span class="rk-climate-bar-label">Strefa II<small>−18°C</small></span></div>
              <div class="rk-climate-bar-item" data-zone="3"><span class="rk-climate-bar-value">—</span><div class="rk-climate-bar-track"><div class="rk-climate-bar-fill"></div></div><span class="rk-climate-bar-label">Strefa III<small>−20°C</small></span></div>
              <div class="rk-climate-bar-item" data-zone="4"><span class="rk-climate-bar-value">—</span><div class="rk-climate-bar-track"><div class="rk-climate-bar-fill"></div></div><span class="rk-climate-bar-label">Strefa IV<small>−22°C</small></span></div>
              <div class="rk-climate-bar-item" data-zone="5"><span class="rk-climate-bar-value">—</span><div class="rk-climate-bar-track"><div class="rk-climate-bar-fill"></div></div><span class="rk-climate-bar-label">Strefa V<small>−24°C</small></span></div>
            </div>
          </div>
          <p class="rk-climate-tool-disclaimer">Założenie scenariusza: ten sam budynek, ta sama temperatura wewnętrzna i proporcjonalna zmiana składników zależnych od różnicy temperatur. Pełne OZC uwzględnia osobno m.in. wentylację, grunt, mostki cieplne, odzysk ciepła i warunki pomieszczeń.</p>
        </div>
      </div>

      <aside class="rk-climate-cta" aria-label="Indywidualny projekt ogrzewania podłogowego">
        <div class="rk-climate-cta-title">Znasz już temperaturę projektową. Teraz trzeba policzyć każde pomieszczenie</div>
        <p>Strefa nie określa strat pomieszczeń, rozstawu rur, długości pętli, przepływów ani temperatury zasilania. W indywidualnym projekcie łączymy lokalizację z konstrukcją budynku, wentylacją, przeszkleniami i okładzinami podłogowymi.</p>
        <a class="rk-climate-cta-button" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Sprawdź zakres indywidualnego projektu podłogówki</a>
        <small class="rk-climate-link-disclosure">Odnośnik prowadzi do płatnej usługi projektowej autora poradnika.</small>
      </aside>
    </section>

    <section class="rk-climate-section" id="rk-climate-interpretation">
      <span class="rk-climate-eyebrow">Od wyniku narzędzia do projektu</span>
      <h2 class="rk-climate-section-title">Jak interpretować wynik wyszukiwarki?</h2>
      <p class="rk-climate-lead">Wynik odpowiada na jedno konkretne pytanie: <strong>jaką projektową temperaturę zewnętrzną przyjąć jako punkt wyjścia dla wskazanej lokalizacji?</strong> Nie jest oceną energetyczną domu i nie zastępuje obliczeń pomieszczenie po pomieszczeniu.</p>
      <div class="rk-climate-grid-4">
        <article class="rk-climate-card"><span class="rk-climate-card-number">KROK 1</span><h3>Lokalizacja</h3><p>Wybór miejscowości przypisuje orientacyjną strefę i temperaturę zewnętrzną. Granice i obszary górskie wymagają dokładniejszej kontroli.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">KROK 2</span><h3>Temperatura wnętrza</h3><p>Inną temperaturę projektową przyjmuje się dla salonu, inną można przyjąć dla łazienki, garażu lub pomieszczenia technicznego.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">KROK 3</span><h3>Różnica ΔT</h3><p>Różnica między temperaturą pomieszczenia a temperaturą zewnętrzną wpływa na straty przez przegrody i wentylację.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">KROK 4</span><h3>Pełne OZC</h3><p>Dopiero geometria, współczynniki U, mostki, grunt i wentylacja zamieniają warunki klimatyczne w wynik wyrażony w watach.</p></article>
      </div>
      <div class="rk-climate-formula">idea zależności: Φ<sub>projekt</sub> ≈ H × (θ<sub>wew</sub> − θ<sub>zew</sub>)</div>
      <p class="rk-climate-copy">Wzór pokazuje kierunek wpływu temperatury, gdzie H jest łączną charakterystyką strat w W/K. Nie jest kompletnym algorytmem OZC. W prawidłowych obliczeniach różne drogi przepływu ciepła i wentylację analizuje się zgodnie z ich własnymi warunkami.</p>
      <div class="rk-climate-note rk-climate-note-good"><p><strong>Najważniejsza interpretacja:</strong> wynik −20°C nie znaczy, że dom „potrzebuje określonej mocy”. Znaczy, że jego moc projektową trzeba policzyć dla właściwych warunków zewnętrznych.</p></div>
    </section>

    <section class="rk-climate-section rk-climate-section-soft" id="rk-climate-zones">
      <span class="rk-climate-eyebrow">Podstawowe dane porównawcze</span>
      <h2 class="rk-climate-section-title">Pięć stref klimatycznych i temperatury projektowe</h2>
      <p class="rk-climate-lead">W stosowanym w Polsce podziale do obliczeń ogrzewania kolejne strefy różnią się o 2 K. Poniższe porównanie pokazuje również ΔT przy temperaturze pomieszczenia 20°C.</p>
      <div class="rk-climate-table-wrap">
        <table>
          <thead><tr><th>Strefa</th><th>Temperatura zewnętrzna</th><th>ΔT przy 20°C</th><th>Zmiana ΔT względem poprzedniej</th><th>Znaczenie</th></tr></thead>
          <tbody>
            <tr><td data-label="Strefa"><strong>I</strong></td><td data-label="Temperatura zewnętrzna">−16°C</td><td data-label="ΔT przy 20°C">36 K</td><td data-label="Zmiana">punkt odniesienia</td><td data-label="Znaczenie">Najłagodniejszy zestaw warunków projektowych spośród pięciu stref.</td></tr>
            <tr><td data-label="Strefa"><strong>II</strong></td><td data-label="Temperatura zewnętrzna">−18°C</td><td data-label="ΔT przy 20°C">38 K</td><td data-label="Zmiana">około +5,6%</td><td data-label="Znaczenie">O 2 K większa różnica temperatur niż w strefie I.</td></tr>
            <tr><td data-label="Strefa"><strong>III</strong></td><td data-label="Temperatura zewnętrzna">−20°C</td><td data-label="ΔT przy 20°C">40 K</td><td data-label="Zmiana">około +5,3%</td><td data-label="Znaczenie">Częsty punkt odniesienia dla dużej części kraju, ale nie wartość domyślna dla każdej lokalizacji.</td></tr>
            <tr><td data-label="Strefa"><strong>IV</strong></td><td data-label="Temperatura zewnętrzna">−22°C</td><td data-label="ΔT przy 20°C">42 K</td><td data-label="Zmiana">około +5,0%</td><td data-label="Znaczenie">Surowsze warunki projektowe, spotykane m.in. na części obszarów wschodnich i północno-wschodnich.</td></tr>
            <tr><td data-label="Strefa"><strong>V</strong></td><td data-label="Temperatura zewnętrzna">−24°C</td><td data-label="ΔT przy 20°C">44 K</td><td data-label="Zmiana">około +4,8%</td><td data-label="Znaczenie">Najniższa temperatura projektowa; dotyczy wybranych obszarów północno-wschodnich i górskich.</td></tr>
          </tbody>
        </table>
      </div>
      <p class="rk-climate-copy">Procenty opisują zmianę samej różnicy temperatur względem poprzedniej strefy. Nie są gotowym procentem wzrostu całkowitego OZC, zużycia energii ani rachunku. Więcej o podstawie obliczeniowej znajdziesz w poradniku o <a href="https://projekt-ogrzewania.pl/norma-pn-en-12831-klucz-do-efektywnego-i-komfortowego-ogrzewania-podlogowego/">normie PN-EN 12831</a>.</p>
    </section>

    <section class="rk-climate-section" id="rk-climate-ozc">
      <span class="rk-climate-eyebrow">Temperatura jest wejściem, nie wynikiem</span>
      <h2 class="rk-climate-section-title">Jak strefa klimatyczna wpływa na projektowe obciążenie cieplne OZC?</h2>
      <p class="rk-climate-lead">Przy niezmienionym budynku niższa projektowa temperatura zewnętrzna zwiększa część strat zależną od różnicy temperatur. Skala zmiany zależy jednak od konstrukcji domu i udziału poszczególnych dróg strat.</p>
      <div class="rk-climate-grid-3">
        <article class="rk-climate-card"><span class="rk-climate-card-number">PRZENIKANIE</span><h3>Ściany, dach i okna</h3><p>Powierzchnia, współczynnik U i różnica temperatur decydują o stratach przez przegrody zewnętrzne. Każda przegroda jest liczona osobno.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">POWIETRZE</span><h3>Wentylacja i infiltracja</h3><p>Strumień powietrza, szczelność, odzysk ciepła i warunki pracy wentylacji wpływają na obciążenie wentylacyjne.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">POZOSTAŁE</span><h3>Grunt i mostki cieplne</h3><p>Podłogi na gruncie nie są zwykłą ścianą zewnętrzną, a mostki powinny wynikać z geometrii i współczynników liniowych.</p></article>
      </div>
      <p class="rk-climate-copy">Dlatego uproszczone mnożenie jednej powierzchni przez średni współczynnik U i ΔT może być przykładem edukacyjnym, lecz nie powinno być nazywane pełnym OZC. Rzetelny <a href="https://projekt-ogrzewania.pl/bilans-cieplny-budynku-fundament-efektywnosci-energetycznej-i-komfortu/">bilans cieplny budynku</a> rozdziela elementy oraz pokazuje wynik całego budynku i poszczególnych pomieszczeń.</p>
      <div class="rk-climate-note rk-climate-note-bad"><p><strong>Nie dodajemy automatycznego „normowego zapasu 10%”.</strong> Dodatkowa moc na ponowne nagrzewanie lub inne warunki powinna wynikać z przyjętej metody, sposobu użytkowania i jawnego założenia, a nie ze stałego narzutu w każdym domu.</p></div>
    </section>

    <section class="rk-climate-section rk-climate-section-soft" id="rk-climate-floor">
      <span class="rk-climate-eyebrow">Od pomieszczenia do pętli</span>
      <h2 class="rk-climate-section-title">Czy strefa klimatyczna wyznacza rozstaw rur podłogówki?</h2>
      <p class="rk-climate-lead"><strong>Nie bezpośrednio.</strong> Strefa wpływa na warunki obliczeniowe budynku. Rozstaw rur wynika dopiero z wymaganej mocy konkretnego pomieszczenia, powierzchni czynnej, okładziny i parametrów wody.</p>
      <div class="rk-climate-grid-4">
        <article class="rk-climate-card"><span class="rk-climate-card-number">W/m²</span><h3>Obciążenie pomieszczenia</h3><p>Ten sam dom może mieć salon o małym obciążeniu i łazienkę wymagającą większej mocy jednostkowej.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">A</span><h3>Powierzchnia czynna</h3><p>Zabudowa stała i wyłączone pola zmniejszają powierzchnię, z której podłoga może oddać potrzebne ciepło.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">Rλ,B</span><h3>Opór wykończenia</h3><p>Płytki, winyl, panele i drewno stawiają różny opór, więc przy tych samych rurach dają inną moc powierzchniową.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">θm</span><h3>Temperatura wody</h3><p>Wydajność zależy od średniej temperatury czynnika względem temperatury pomieszczenia, a nie od numeru strefy.</p></article>
      </div>
      <p class="rk-climate-copy">Z tego powodu nie wpisujemy w wyszukiwarce reguł „strefa I = 15 cm” i „strefa V = 10 cm”. Zasady doboru pokazuje osobny poradnik o <a href="https://projekt-ogrzewania.pl/rozstaw-rur-w-ogrzewaniu-podlogowym-co-10-czy-15-cm/">rozstawie rur 10 czy 15 cm</a>, natomiast ograniczenia wydajności i temperatur powierzchni opisuje <a href="https://projekt-ogrzewania.pl/pn-en-1264-norma-ktora-definiuje-ogrzewanie-podlogowe/">PN-EN 1264 w ogrzewaniu podłogowym</a>.</p>
      <div class="rk-climate-note"><p><strong>Przykład:</strong> dobrze izolowany dom w strefie V może potrzebować mniejszej mocy z podłogi niż słabo izolowany dom w strefie II. Numer strefy nie zastępuje danych budynku.</p></div>
    </section>

    <section class="rk-climate-section" id="rk-climate-energy">
      <span class="rk-climate-eyebrow">Trzy wyniki, trzy zastosowania</span>
      <h2 class="rk-climate-section-title">Moc w kW, energia w kWh i koszt w złotych to nie to samo</h2>
      <p class="rk-climate-lead">Projektowa temperatura zewnętrzna służy przede wszystkim do wyznaczenia mocy potrzebnej w warunkach obliczeniowych. Roczne zużycie i koszt wymagają osobnej analizy sezonu.</p>
      <div class="rk-climate-table-wrap">
        <table>
          <thead><tr><th>Wielkość</th><th>Jednostka</th><th>Na jakie pytanie odpowiada?</th><th>Czego nie wolno z niej wyciągać?</th></tr></thead>
          <tbody>
            <tr><td data-label="Wielkość"><strong>Projektowe obciążenie</strong></td><td data-label="Jednostka">W lub kW</td><td data-label="Pytanie">Ile mocy potrzeba w określonych warunkach projektowych?</td><td data-label="Ograniczenie">Nie jest liczbą kilowatogodzin zużywanych przez cały sezon.</td></tr>
            <tr><td data-label="Wielkość"><strong>Energia użytkowa</strong></td><td data-label="Jednostka">kWh/rok</td><td data-label="Pytanie">Ile ciepła budynek potrzebuje w analizowanym roku lub roku standardowym?</td><td data-label="Ograniczenie">Nie jest automatycznie energią kupioną przez pompę, kocioł lub grzałkę.</td></tr>
            <tr><td data-label="Wielkość"><strong>Energia kupiona</strong></td><td data-label="Jednostka">kWh prądu, gazu lub paliwa</td><td data-label="Pytanie">Ile nośnika potrzebuje źródło przy określonej sprawności lub SCOP?</td><td data-label="Ograniczenie">Nie określa kosztu bez ceny, taryfy i opłat stałych.</td></tr>
            <tr><td data-label="Wielkość"><strong>Koszt eksploatacji</strong></td><td data-label="Jednostka">zł/rok</td><td data-label="Pytanie">Ile kosztuje energia, opłaty stałe, serwis i ewentualna praca źródła szczytowego?</td><td data-label="Ograniczenie">Nie może wynikać wyłącznie z numeru strefy.</td></tr>
          </tbody>
        </table>
      </div>
      <p class="rk-climate-copy">Jeżeli chcesz sprawdzić roczne warianty, użyj narzędzia, które rozdziela moc od energii i kosztu. Nie przeliczaj mocy projektowej przez arbitralną liczbę godzin sezonu. Temat ten rozwija <a href="https://projekt-ogrzewania.pl/koszt-ogrzewania-domu-2025/">porównanie kosztów ogrzewania domu</a>.</p>
    </section>

    <section class="rk-climate-section rk-climate-section-soft" id="rk-climate-cost-claim">
      <span class="rk-climate-eyebrow">Weryfikacja mocnej obietnicy</span>
      <h2 class="rk-climate-section-title">Czy błąd o jedną strefę naprawdę kosztuje 6000 zł rocznie?</h2>
      <p class="rk-climate-lead"><strong>Nie istnieje jedna kwota przypisana do pomyłki strefy.</strong> Skutek może być mały, istotny albo bardzo kosztowny — zależnie od budynku, źródła, punktu biwalentnego, taryfy, sterowania i faktycznego przebiegu zimy.</p>
      <div class="rk-climate-grid-2">
        <article class="rk-climate-card">
          <span class="rk-climate-card-number">1 STREFA</span>
          <h3>Sąsiednie strefy różnią się o 2 K</h3>
          <p>Przy 20°C wewnątrz przejście o jeden stopień podziału zmienia ΔT w pokazanych parach o około 4,8–5,6%. Nie oznacza automatycznie identycznej zmiany całego OZC ani rachunku.</p>
        </article>
        <article class="rk-climate-card">
          <span class="rk-climate-card-number">II → V</span>
          <h3>To przeskok o trzy strefy</h3>
          <p>ΔT rośnie z 38 K do 44 K, czyli o około 15,8%. To nadal porównanie warunków projektowych, a nie rocznego zużycia energii.</p>
        </article>
      </div>
      <div class="rk-climate-answer">
        <strong>Przykład edukacyjny: 6,0 kW w strefie II nie staje się automatycznie 9,0 kW w strefie V.</strong>
        <p>Przy prostym skalowaniu proporcjonalnym do ΔT otrzymalibyśmy 6,0 × 44/38 ≈ 6,95 kW. Pełny wynik może być inny, ponieważ nie wszystkie składniki obciążenia zachowują się jak jeden wspólny współczynnik.</p>
      </div>
      <p class="rk-climate-copy">Kwota 6000 zł może wystąpić w określonym scenariuszu, np. przy długiej pracy grzałki elektrycznej i niekorzystnej taryfie, ale wymaga pokazania czasu pracy, mocy grzałki, cen energii i warunków sezonu. Bez tych założeń byłaby reklamową liczbą, a nie wynikiem technicznym.</p>
    </section>

    <section class="rk-climate-section" id="rk-climate-boundaries">
      <span class="rk-climate-eyebrow">Gdzie prosta wyszukiwarka ma granice</span>
      <h2 class="rk-climate-section-title">Miejscowości graniczne, tereny górskie i lokalny mikroklimat</h2>
      <p class="rk-climate-lead">Nazwa miasta nie zawsze wystarcza do odpowiedzialnego przypisania warunków. W rozległych gminach znaczenie mogą mieć dokładne położenie, wysokość, ekspozycja terenu i sąsiedztwo granicy stref.</p>
      <div class="rk-climate-grid-3">
        <article class="rk-climate-card"><span class="rk-climate-icon">↔</span><h3>Granica stref</h3><p>Dwie pobliskie miejscowości mogą leżeć po przeciwnych stronach linii podziału. Nie należy przenosić wyniku tylko dlatego, że odległość wydaje się mała.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-icon">▲</span><h3>Wysokość i ukształtowanie</h3><p>W górach różnica wysokości między centrum miejscowości a działką może być istotniejsza niż sama nazwa pocztowa.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-icon">✓</span><h3>Dokumentacja projektu</h3><p>Przy wątpliwości pierwszeństwo ma zweryfikowana lokalizacja budynku i krajowe dane przyjęte przez projektanta, nie podpowiedź internetowa.</p></article>
      </div>
      <div class="rk-climate-note"><p><strong>Dlatego baza nie zgaduje wyniku dla każdej polskiej wsi.</strong> Jeżeli miejscowości nie ma na liście albo wynik oznaczono jako wymagający kontroli, wybierz strefę ręcznie dopiero po sprawdzeniu dokumentacji.</p></div>
    </section>

    <section class="rk-climate-section rk-climate-section-soft" id="rk-climate-heat-pump">
      <span class="rk-climate-eyebrow">Źródło ciepła pracuje w konkretnych warunkach</span>
      <h2 class="rk-climate-section-title">Strefa klimatyczna, pompa ciepła i punkt biwalentny</h2>
      <p class="rk-climate-lead">Niższa temperatura projektowa może jednocześnie zwiększać obciążenie budynku i zmniejszać dostępną moc powietrznej pompy ciepła. Dlatego nie dobiera się urządzenia wyłącznie z jednego wyniku „moc domu”.</p>
      <div class="rk-climate-grid-3">
        <article class="rk-climate-card"><span class="rk-climate-card-number">A</span><h3>Krzywa obciążenia budynku</h3><p>Pokazuje, jak rośnie zapotrzebowanie na moc wraz ze spadkiem temperatury zewnętrznej.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">B</span><h3>Charakterystyka pompy</h3><p>Dostępna moc i COP zależą od temperatury powietrza oraz wymaganej temperatury wody grzewczej.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">A × B</span><h3>Punkt biwalentny</h3><p>Miejsce przecięcia charakterystyk pomaga ocenić, kiedy i w jakim zakresie może być potrzebne źródło szczytowe.</p></article>
      </div>
      <p class="rk-climate-copy">Dopiero to zestawienie pozwala ocenić wpływ grzałki na koszty. Zobacz także, jak wygląda <a href="https://projekt-ogrzewania.pl/projekt-ogrzewania-podlogowego-z-pompa-ciepla/">projekt ogrzewania podłogowego z pompą ciepła</a> oraz dlaczego <a href="https://projekt-ogrzewania.pl/niska-temperatura-zasilania-pompy-ciepla-dlaczego-35-stopni-to-ideal-dla-podlogowki/">niska temperatura zasilania</a> pomaga utrzymać korzystne warunki pracy źródła.</p>
      <div class="rk-climate-note rk-climate-note-bad"><p><strong>Strefa nie wybiera typoszeregu urządzenia.</strong> Przejście z 6 kW bezpośrednio na 9 kW tylko na podstawie numeru strefy pomija charakterystykę budynku i konkretnego modelu pompy.</p></div>
    </section>

    <section class="rk-climate-section" id="rk-climate-errors">
      <span class="rk-climate-eyebrow">Błędy, które zmieniają wynik albo jego znaczenie</span>
      <h2 class="rk-climate-section-title">Najczęstsze błędy przy korzystaniu ze stref klimatycznych</h2>
      <div class="rk-climate-grid-3">
        <article class="rk-climate-card"><span class="rk-climate-card-number">BŁĄD 1</span><h3>Domyślna strefa III</h3><p>Przyjmowanie −20°C bez sprawdzenia działki może zawyżyć albo zaniżyć warunki wejściowe.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">BŁĄD 2</span><h3>Moc z samej lokalizacji</h3><p>Dwa domy stojące obok siebie mogą mieć radykalnie różne obciążenie przez powierzchnię, izolację i wentylację.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">BŁĄD 3</span><h3>Rozstaw przypisany do strefy</h3><p>Numer strefy nie zna powierzchni czynnej, okładziny ani strat konkretnej łazienki, salonu czy sypialni.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">BŁĄD 4</span><h3>Stały zapas procentowy</h3><p>Uniwersalny narzut bez opisania powodu zaciemnia wynik i może prowadzić do przewymiarowania.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">BŁĄD 5</span><h3>Moc pomnożona przez sezon</h3><p>Projektowe kW nie działają przez wszystkie godziny zimy. Takie mnożenie nie daje rocznego zużycia.</p></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">BŁĄD 6</span><h3>Brak kontroli działki</h3><p>W górach i przy granicach stref ogólne przypisanie do miasta może nie opisywać dokładnego położenia budynku.</p></article>
      </div>
      <p class="rk-climate-copy">Do wstępnej edukacji można wykorzystać <a href="https://projekt-ogrzewania.pl/kalkulator-strat-ciepla-budynku-jak-samodzielnie-obliczyc-zapotrzebowanie-na-ogrzewanie/">kalkulator strat ciepła budynku</a>, ale wyniki do projektu podłogówki powinny uwzględniać pomieszczenia, powierzchnie i warunki rzeczywistego budynku.</p>
    </section>

    <section class="rk-climate-section rk-climate-section-soft" id="rk-climate-data">
      <span class="rk-climate-eyebrow">Od adresu inwestycji do obliczeń</span>
      <h2 class="rk-climate-section-title">Jakie dane są potrzebne projektantowi oprócz strefy?</h2>
      <p class="rk-climate-lead">Adres i strefa rozpoczynają obliczenia. Wiarygodny projekt wymaga jednak kompletnego opisu bryły, przegród, wentylacji, pomieszczeń i planowanego wykończenia podłóg.</p>
      <div class="rk-climate-grid-3">
        <article class="rk-climate-card"><span class="rk-climate-card-number">BUDYNEK</span><h3>Geometria i przegrody</h3><ul class="rk-climate-bullets"><li>rzuty, przekroje i wymiary,</li><li>warstwy ścian, dachu i podłogi,</li><li>okna, drzwi i przeszklenia,</li><li>strefy ogrzewane i nieogrzewane.</li></ul></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">POWIETRZE</span><h3>Wentylacja i temperatury</h3><ul class="rk-climate-bullets"><li>rodzaj wentylacji,</li><li>strumienie powietrza,</li><li>odzysk ciepła i bilans nawiewu,</li><li>temperatury projektowe pomieszczeń.</li></ul></article>
        <article class="rk-climate-card"><span class="rk-climate-card-number">PODŁOGA</span><h3>Układ instalacji</h3><ul class="rk-climate-bullets"><li>powierzchnie wyłączone z grzania,</li><li>rodzaj i opór okładzin,</li><li>lokalizacja rozdzielaczy,</li><li>źródło i zakładane parametry wody.</li></ul></article>
      </div>
      <p class="rk-climate-copy">Na tej podstawie można ocenić, <a href="https://projekt-ogrzewania.pl/czy-ogrzewanie-podlogowe-moze-byc-jedynym-zrodlem-ciepla-w-domu-analiza-dla-polskich-warunkow/">czy podłogówka może być jedynym źródłem ciepła</a>, dobrać <a href="https://projekt-ogrzewania.pl/strefa-brzegowa-w-ogrzewaniu-podlogowym/">strefy brzegowe</a> oraz sprawdzić wpływ <a href="https://projekt-ogrzewania.pl/jak-rodzaj-okladziny-podlogowej-wplywa-na-wydajnosc-ogrzewania-podlogowego/">okładziny podłogowej na wydajność</a>.</p>
    </section>

    <section class="rk-climate-section rk-climate-final" id="rk-climate-final">
      <span class="rk-climate-eyebrow">Najważniejszy wniosek</span>
      <h2 class="rk-climate-section-title">Sprawdź strefę, ale projektuj cały budynek</h2>
      <p class="rk-climate-lead">Prawidłowa temperatura projektowa chroni obliczenia przed błędem wejściowym. Nie zastępuje jednak modelu strat, bilansu pomieszczeń ani hydrauliki ogrzewania podłogowego.</p>
      <div class="rk-climate-cta">
        <div class="rk-climate-cta-title">Od temperatury zewnętrznej do rozstawów, pętli i przepływów</div>
        <p>Indywidualny projekt łączy OZC pomieszczeń z powierzchnią czynną, okładzinami, temperaturą zasilania i oporami hydraulicznymi. Wykonawca otrzymuje dane potrzebne do ułożenia oraz wyregulowania instalacji.</p>
        <a class="rk-climate-cta-button" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Zamów projekt ogrzewania podłogowego</a>
        <small class="rk-climate-link-disclosure">Odnośnik prowadzi do płatnej usługi projektowej autora poradnika.</small>
      </div>
    </section>

    <section class="rk-climate-section" id="rk-climate-sources">
      <span class="rk-climate-eyebrow">Podstawa techniczna</span>
      <h2 class="rk-climate-section-title">Oficjalne źródła i zakres obliczeń</h2>
      <p class="rk-climate-lead">Źródła porządkują metodę obliczania projektowego obciążenia, wymagania budowlane i zasady projektowania systemów płaszczyznowych. Pełne normy należy stosować w aktualnym wydaniu wraz z właściwymi danymi krajowymi.</p>
      <div class="rk-climate-source-grid">
        <article class="rk-climate-source-card"><a href="https://www.pkn.pl/" target="_blank" rel="nofollow noopener noreferrer">Polski Komitet Normalizacyjny</a><p>Oficjalny portal do wyszukiwania aktualnych Polskich Norm i informacji o ich statusie.</p></article>
        <article class="rk-climate-source-card"><a href="https://repo.pw.edu.pl/info/article/WUT7c194b7443134803a9d035c593eba8a2/Norma%2BPN-EN%2B12831-1%3A2017-08.%2BKluczowe%2Bzmiany%2Bw%2Bmetodyce%2Bobliczania%2Bobci%C4%85%C5%BCenia%2Bcieplnego%2Bbudynk%C3%B3w%2B" target="_blank" rel="nofollow noopener noreferrer">Politechnika Warszawska — PN-EN 12831-1</a><p>Opracowanie dotyczące zmian w metodyce obliczania projektowego obciążenia cieplnego budynków.</p></article>
        <article class="rk-climate-source-card"><a href="https://eli.gov.pl/eli/DU/2022/1225/ogl" target="_blank" rel="nofollow noopener noreferrer">Dziennik Ustaw — Warunki Techniczne</a><p>Oficjalny tekst przepisów określających wymagania techniczne dla budynków i ich usytuowania.</p></article>
        <article class="rk-climate-source-card"><a href="https://www.iso.org/standard/74683.html" target="_blank" rel="nofollow noopener noreferrer">ISO 11855-2:2021</a><p>Oficjalna karta normy dotyczącej określania projektowej mocy systemów ogrzewania i chłodzenia płaszczyznowego.</p></article>
        <article class="rk-climate-source-card"><a href="https://www.iso.org/standard/65696.html" target="_blank" rel="nofollow noopener noreferrer">ISO 52016-1:2017</a><p>Oficjalna karta metody obliczania potrzeb energetycznych budynku oraz temperatur wewnętrznych.</p></article>
        <article class="rk-climate-source-card"><a href="https://energy.ec.europa.eu/topics/energy-efficiency/energy-efficient-buildings/energy-performance-buildings-directive_en" target="_blank" rel="nofollow noopener noreferrer">Komisja Europejska — charakterystyka energetyczna budynków</a><p>Oficjalne informacje o ramach oceny charakterystyki energetycznej budynków w Unii Europejskiej.</p></article>
      </div>
      <div class="rk-climate-responsibility"><p><strong>Zakres narzędzia:</strong> wyszukiwarka jest pomocą edukacyjną opartą na pięciostrefowym podziale stosowanym w obliczeniach ogrzewania. Nie stanowi dokumentu normowego, mapy geodezyjnej, pełnego OZC, doboru pompy ciepła ani projektu instalacji. Dla działek przy granicy stref i na terenach górskich należy potwierdzić dokładne warunki lokalizacji.</p></div>
    </section>

    <section class="rk-climate-section rk-climate-section-soft" id="rk-climate-faq">
      <span class="rk-climate-eyebrow">Pytania inwestorów i wykonawców</span>
      <h2 class="rk-climate-section-title">FAQ — strefy klimatyczne, OZC i ogrzewanie podłogowe</h2>
      <div class="rk-climate-faq">
        <details><summary>Ile stref klimatycznych stosuje się w Polsce do obliczeń ogrzewania?</summary><div class="rk-climate-faq-answer"><p>Stosowany podział obejmuje pięć stref oznaczonych od I do V. Odpowiadają im projektowe temperatury zewnętrzne od −16°C do −24°C, zmieniające się co 2 K.</p></div></details>
        <details><summary>Jakie temperatury odpowiadają strefom I–V?</summary><div class="rk-climate-faq-answer"><p>Strefa I to −16°C, II −18°C, III −20°C, IV −22°C, a V −24°C. Są to temperatury projektowe używane jako dane wejściowe, a nie średnie temperatury zimy.</p></div></details>
        <details><summary>Czy wyszukiwarka działa bez polskich znaków?</summary><div class="rk-climate-faq-answer"><p>Tak. Można wpisać na przykład „lodz”, „swinoujscie” lub „bialystok”. Skrypt normalizuje znaki i wyświetla poprawną nazwę miejscowości w podpowiedziach.</p></div></details>
        <details><summary>Co zrobić, jeśli miejscowości nie ma w bazie?</summary><div class="rk-climate-faq-answer"><p>Nie należy wybierać przypadkowego pobliskiego miasta. Sprawdź strefę w dokumentacji lokalizacji lub u projektanta, a następnie użyj ręcznego wyboru strefy w narzędziu.</p></div></details>
        <details><summary>Czy strefa klimatyczna określa dokładne OZC domu?</summary><div class="rk-climate-faq-answer"><p>Nie. Strefa podaje projektową temperaturę zewnętrzną. OZC zależy dodatkowo od powierzchni i parametrów przegród, mostków cieplnych, wentylacji, gruntu oraz temperatur poszczególnych pomieszczeń.</p></div></details>
        <details><summary>Czy w strefie V rury zawsze trzeba układać co 10 cm?</summary><div class="rk-climate-faq-answer"><p>Nie. Rozstaw wynika z obciążenia danego pomieszczenia, powierzchni czynnej, oporu okładziny i temperatury wody. Dobrze izolowany dom w strefie V nie musi mieć wszędzie mniejszego rozstawu niż słabo izolowany dom w strefie II.</p></div></details>
        <details><summary>Czy strefa określa temperaturę zasilania podłogówki?</summary><div class="rk-climate-faq-answer"><p>Nie. Temperatura zasilania wynika z potrzebnej mocy, konstrukcji podłogi, rozstawu, okładziny i ograniczeń temperatury powierzchni. Strefa wpływa na obciążenie, ale nie daje gotowej nastawy.</p></div></details>
        <details><summary>Czy błąd o jedną strefę zawsze kosztuje 6000 zł rocznie?</summary><div class="rk-climate-faq-answer"><p>Nie. Nie istnieje stała kwota. Koszt zależy od skali błędu w obciążeniu, charakterystyki źródła, pracy grzałki, taryfy, cen energii, regulacji i rzeczywistej pogody w sezonie.</p></div></details>
        <details><summary>Jaka jest różnica między strefą II a V?</summary><div class="rk-climate-faq-answer"><p>Temperatura projektowa zmienia się z −18°C na −24°C, czyli o 6 K. Przy 20°C wewnątrz ΔT rośnie z 38 do 44 K, co oznacza wzrost o około 15,8% dla składnika proporcjonalnego do ΔT.</p></div></details>
        <details><summary>Czy projektowa temperatura zewnętrzna to najniższa temperatura w historii?</summary><div class="rk-climate-faq-answer"><p>Nie. To parametr obliczeniowy przyjmowany według danych klimatycznych i metody projektowej. Nie musi być równy rekordowi meteorologicznemu ani średniej minimalnej temperaturze sezonu.</p></div></details>
        <details><summary>Jak strefa wpływa na dobór pompy ciepła?</summary><div class="rk-climate-faq-answer"><p>Wpływa na obciążenie budynku przy niskiej temperaturze, ale urządzenie dobiera się także z jego charakterystyki mocy, COP, temperatury zasilania, punktu biwalentnego i przyjętej strategii źródła szczytowego.</p></div></details>
        <details><summary>Czy wynik dla centrum miasta pasuje do działki w górach?</summary><div class="rk-climate-faq-answer"><p>Nie zawsze. Wysokość, ekspozycja i położenie względem granicy stref mogą wymagać dokładniejszej weryfikacji. Dlatego lokalizacje górskie w bazie otrzymują ostrzeżenie.</p></div></details>
        <details><summary>Czy projektową temperaturę wnętrza ustala się jednakowo dla całego domu?</summary><div class="rk-climate-faq-answer"><p>Nie musi tak być. Łazienka może mieć wyższą temperaturę projektową niż sypialnia, a garaż niższą niż część mieszkalna. Pełne OZC uwzględnia warunki każdego pomieszczenia.</p></div></details>
        <details><summary>Czy ze strefy można obliczyć roczne zużycie energii?</summary><div class="rk-climate-faq-answer"><p>Nie z samej strefy. Roczna energia wymaga danych godzinowych lub miesięcznych, charakterystyki budynku, zysków, wentylacji, regulacji i warunków całego sezonu. Projektowe kW nie są rocznymi kWh.</p></div></details>
      </div>
    </section>

    <section class="rk-climate-author" id="rk-climate-author">
      <span class="rk-climate-eyebrow">Opracowanie eksperckie</span>
      <h2 class="rk-climate-author-title">Autor i weryfikacja merytoryczna</h2>
      <div class="rk-climate-author-layout">
        <aside class="rk-climate-author-side">
          <div class="rk-climate-author-photo"><img src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski — projektant instalacji sanitarnych" width="400" height="400" loading="lazy" decoding="async"></div>
          <div class="rk-climate-author-name">Robert Kucharski</div>
          <p class="rk-climate-author-role">Projektant instalacji sanitarnych<br>specjalista HVAC i ogrzewania podłogowego</p>
          <div class="rk-climate-author-social" aria-label="Profile autora">
            <a href="https://www.linkedin.com/in/robert-kucharski-b8b906199/" target="_blank" rel="nofollow noopener noreferrer me" aria-label="LinkedIn Roberta Kucharskiego">in</a>
            <a href="https://www.facebook.com/projektogrzewaniapl" target="_blank" rel="nofollow noopener noreferrer me" aria-label="Facebook Projekt Ogrzewania">f</a>
            <a href="https://x.com/Projekt_HVAC" target="_blank" rel="nofollow noopener noreferrer me" aria-label="Profil Projekt HVAC w serwisie X">X</a>
          </div>
        </aside>
        <div class="rk-climate-author-main">
          <div class="rk-climate-author-quote">„Moim zdaniem strefa klimatyczna jest ważną daną wejściową, ale sama nie dobiera pompy ciepła ani rozstawu rur. O jakości projektu decyduje dopiero połączenie lokalizacji z obciążeniem każdego pomieszczenia i hydrauliką instalacji.”</div>
          <p>Robert Kucharski opracowuje projekty ogrzewania podłogowego, obliczenia cieplne i hydrauliczne oraz materiały edukacyjne dla inwestorów i wykonawców. W publikacjach rozdziela projektową moc w kW, roczne zapotrzebowanie w kWh i rzeczywisty koszt eksploatacji.</p>
          <p>W tym poradniku zweryfikował zależność między temperaturą projektową, OZC, wydajnością podłogi i charakterystyką źródła. Wyszukiwarka została celowo ograniczona do parametru, który można uczciwie wyprowadzić z przypisania strefy; pozostałe wartości wymagają danych budynku.</p>
          <p>Publikuje również w portalach <a href="https://remont.biz.pl/" target="_blank" rel="nofollow noopener noreferrer">Remont.biz.pl</a> i <a href="https://sobir.pl/" target="_blank" rel="nofollow noopener noreferrer">Sobir.pl</a>. <a href="https://projekt-ogrzewania.pl/author/admin3399/">Zobacz pozostałe artykuły Roberta Kucharskiego w serwisie Projekt-Ogrzewania.pl</a>.</p>
          <div class="rk-climate-author-facts">
            <div class="rk-climate-author-fact"><strong>Praktyka projektowa</strong>OZC pomieszczeń, podłogówka, przepływy i opory hydrauliczne</div>
            <div class="rk-climate-author-fact"><strong>Metoda</strong>Jawne dane wejściowe, rozdzielenie mocy od energii i kontrola ograniczeń</div>
            <div class="rk-climate-author-fact"><strong>Zakres aktualizacji</strong>Treść, narzędzie, źródła i FAQ sprawdzone 15 września 2026 r.</div>
          </div>
        </div>
      </div>
    </section>
  </div>
</article>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "WebSite",
      "@id": "https://projekt-ogrzewania.pl/#website",
      "url": "https://projekt-ogrzewania.pl/",
      "name": "Projekt Ogrzewania",
      "publisher": { "@id": "https://projekt-ogrzewania.pl/#organization" },
      "inLanguage": "pl-PL"
    },
    {
      "@type": "Organization",
      "@id": "https://projekt-ogrzewania.pl/#organization",
      "name": "Projekt-Ogrzewania.pl",
      "url": "https://projekt-ogrzewania.pl/",
      "founder": { "@id": "https://projekt-ogrzewania.pl/#robert-kucharski" },
      "sameAs": [
        "https://www.facebook.com/projektogrzewaniapl",
        "https://x.com/Projekt_HVAC"
      ]
    },
    {
      "@type": "Organization",
      "@id": "https://remont.biz.pl/#organization",
      "name": "Remont.biz.pl",
      "url": "https://remont.biz.pl/",
      "founder": { "@id": "https://projekt-ogrzewania.pl/#robert-kucharski" }
    },
    {
      "@type": "Organization",
      "@id": "https://sobir.pl/#organization",
      "name": "Sobir.pl",
      "url": "https://sobir.pl/",
      "founder": { "@id": "https://projekt-ogrzewania.pl/#robert-kucharski" }
    },
    {
      "@type": "Person",
      "@id": "https://projekt-ogrzewania.pl/#robert-kucharski",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/author/admin3399/",
      "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp",
      "jobTitle": "Projektant instalacji sanitarnych i specjalista HVAC",
      "knowsAbout": [
        "projektowe obciążenie cieplne OZC",
        "strefy klimatyczne w Polsce",
        "ogrzewanie podłogowe",
        "pompy ciepła",
        "hydraulika instalacji grzewczych",
        "PN-EN 12831"
      ],
      "worksFor": [
        { "@id": "https://projekt-ogrzewania.pl/#organization" },
        { "@id": "https://remont.biz.pl/#organization" },
        { "@id": "https://sobir.pl/#organization" }
      ],
      "sameAs": [
        "https://www.linkedin.com/in/robert-kucharski-b8b906199/",
        "https://www.facebook.com/projektogrzewaniapl",
        "https://x.com/Projekt_HVAC"
      ]
    },
    {
      "@type": "ImageObject",
      "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#primaryimage",
      "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/08/Strefy-klimatyczne-w-Polsce-a-ogrzewanie-podlogowe-i-OZC.webp",
      "contentUrl": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/08/Strefy-klimatyczne-w-Polsce-a-ogrzewanie-podlogowe-i-OZC.webp",
      "width": 1050,
      "height": 1050,
      "caption": "Strefy klimatyczne w Polsce a ogrzewanie podłogowe i OZC"
    },
    {
      "@type": "BreadcrumbList",
      "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#breadcrumb",
      "itemListElement": [
        { "@type": "ListItem", "position": 1, "name": "Strona główna", "item": "https://projekt-ogrzewania.pl/" },
        { "@type": "ListItem", "position": 2, "name": "Poradniki", "item": "https://projekt-ogrzewania.pl/blog/" },
        { "@type": "ListItem", "position": 3, "name": "Strefy klimatyczne w Polsce", "item": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/" }
      ]
    },
    {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#webpage",
      "url": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/",
      "name": "Strefy klimatyczne w Polsce – wyszukiwarka miejscowości, temperatura projektowa i OZC",
      "description": "Wyszukiwarka stref klimatycznych i wyjaśnienie wpływu projektowej temperatury zewnętrznej na OZC, ogrzewanie podłogowe i pompę ciepła.",
      "isPartOf": { "@id": "https://projekt-ogrzewania.pl/#website" },
      "breadcrumb": { "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#breadcrumb" },
      "primaryImageOfPage": { "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#primaryimage" },
      "datePublished": "2026-08-01T10:12:32+00:00",
      "dateModified": "2026-09-15T12:00:00+02:00",
      "inLanguage": "pl-PL",
      "mainEntity": { "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#article" }
    },
    {
      "@type": "TechArticle",
      "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#article",
      "mainEntityOfPage": { "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#webpage" },
      "headline": "Strefy klimatyczne w Polsce – wyszukiwarka miejscowości, temperatura projektowa i OZC",
      "description": "Techniczny przewodnik po pięciu strefach klimatycznych, temperaturach projektowych i ich prawidłowym wykorzystaniu w OZC oraz projekcie podłogówki.",
      "image": { "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#primaryimage" },
      "author": { "@id": "https://projekt-ogrzewania.pl/#robert-kucharski" },
      "publisher": { "@id": "https://projekt-ogrzewania.pl/#organization" },
      "datePublished": "2026-08-01T10:12:32+00:00",
      "dateModified": "2026-09-15T12:00:00+02:00",
      "inLanguage": "pl-PL",
      "about": [
        "strefy klimatyczne w Polsce",
        "projektowa temperatura zewnętrzna",
        "projektowe obciążenie cieplne OZC",
        "ogrzewanie podłogowe",
        "dobór pompy ciepła"
      ],
      "keywords": "strefy klimatyczne w Polsce, wyszukiwarka stref klimatycznych, temperatura projektowa, temperatura zewnętrzna do OZC, strefa klimatyczna a ogrzewanie podłogowe",
      "isAccessibleForFree": true,
      "hasPart": [
        { "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#locator" },
        { "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#zones-list" },
        { "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#howto" },
        { "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#faq-schema" }
      ]
    },
    {
      "@type": "WebApplication",
      "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#locator",
      "name": "Wyszukiwarka strefy klimatycznej dla miejscowości",
      "url": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#rk-climate-locator-section",
      "applicationCategory": "UtilitiesApplication",
      "operatingSystem": "Dowolny system z nowoczesną przeglądarką internetową",
      "browserRequirements": "JavaScript",
      "isAccessibleForFree": true,
      "inLanguage": "pl-PL",
      "description": "Narzędzie edukacyjne wyszukujące strefę i projektową temperaturę zewnętrzną oraz porównujące ΔT między pięcioma strefami."
    },
    {
      "@type": "Dataset",
      "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#locality-dataset",
      "name": "Baza miejscowości i stref obliczeniowych ogrzewania",
      "description": "Pomocniczy zbiór miejscowości wykorzystywany przez wyszukiwarkę edukacyjną. Lokalizacje graniczne i górskie wymagają kontroli dokładnego położenia.",
      "creator": { "@id": "https://projekt-ogrzewania.pl/#robert-kucharski" },
      "isPartOf": { "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#locator" },
      "inLanguage": "pl-PL",
      "license": "https://projekt-ogrzewania.pl/"
    },
    {
      "@type": "ItemList",
      "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#zones-list",
      "name": "Pięć stref klimatycznych do obliczeń ogrzewania w Polsce",
      "numberOfItems": 5,
      "itemListElement": [
        { "@type": "ListItem", "position": 1, "name": "Strefa I — projektowa temperatura zewnętrzna −16°C" },
        { "@type": "ListItem", "position": 2, "name": "Strefa II — projektowa temperatura zewnętrzna −18°C" },
        { "@type": "ListItem", "position": 3, "name": "Strefa III — projektowa temperatura zewnętrzna −20°C" },
        { "@type": "ListItem", "position": 4, "name": "Strefa IV — projektowa temperatura zewnętrzna −22°C" },
        { "@type": "ListItem", "position": 5, "name": "Strefa V — projektowa temperatura zewnętrzna −24°C" }
      ]
    },
    {
      "@type": "HowTo",
      "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#howto",
      "name": "Jak wykorzystać strefę klimatyczną w projekcie ogrzewania",
      "description": "Procedura od ustalenia lokalizacji do obliczenia obciążenia pomieszczeń i projektu instalacji.",
      "totalTime": "PT15M",
      "step": [
        { "@type": "HowToStep", "position": 1, "name": "Ustal lokalizację", "text": "Wyszukaj miejscowość i sprawdź, czy działka nie leży przy granicy strefy lub na terenie górskim." },
        { "@type": "HowToStep", "position": 2, "name": "Potwierdź temperaturę zewnętrzną", "text": "Przyjmij projektową temperaturę zewnętrzną zgodną z właściwymi danymi krajowymi i dokładną lokalizacją." },
        { "@type": "HowToStep", "position": 3, "name": "Ustal temperatury pomieszczeń", "text": "Określ projektowe temperatury dla salonu, sypialni, łazienki, garażu i pozostałych stref." },
        { "@type": "HowToStep", "position": 4, "name": "Oblicz obciążenie cieplne", "text": "Uwzględnij przegrody, mostki, wentylację, grunt oraz warunki każdego pomieszczenia." },
        { "@type": "HowToStep", "position": 5, "name": "Sprawdź wydajność podłogi", "text": "Porównaj straty pomieszczenia z powierzchnią czynną, okładziną i możliwą mocą ogrzewania podłogowego." },
        { "@type": "HowToStep", "position": 6, "name": "Zaprojektuj hydraulikę", "text": "Wyznacz rozstawy, długości pętli, przepływy, opory i nastawy rozdzielacza." }
      ]
    },
    {
      "@type": "FAQPage",
      "@id": "https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/#faq-schema",
      "mainEntity": [
        { "@type": "Question", "name": "Ile stref klimatycznych stosuje się w Polsce do obliczeń ogrzewania?", "acceptedAnswer": { "@type": "Answer", "text": "Stosowany podział obejmuje pięć stref oznaczonych od I do V. Odpowiadają im projektowe temperatury zewnętrzne od −16°C do −24°C, zmieniające się co 2 K." } },
        { "@type": "Question", "name": "Jakie temperatury odpowiadają strefom I–V?", "acceptedAnswer": { "@type": "Answer", "text": "Strefa I to −16°C, II −18°C, III −20°C, IV −22°C, a V −24°C. Są to temperatury projektowe używane jako dane wejściowe, a nie średnie temperatury zimy." } },
        { "@type": "Question", "name": "Czy wyszukiwarka działa bez polskich znaków?", "acceptedAnswer": { "@type": "Answer", "text": "Tak. Skrypt normalizuje znaki i wyświetla poprawną nazwę miejscowości w podpowiedziach." } },
        { "@type": "Question", "name": "Co zrobić, jeśli miejscowości nie ma w bazie?", "acceptedAnswer": { "@type": "Answer", "text": "Sprawdź strefę w dokumentacji lokalizacji lub u projektanta, a następnie użyj ręcznego wyboru strefy w narzędziu." } },
        { "@type": "Question", "name": "Czy strefa klimatyczna określa dokładne OZC domu?", "acceptedAnswer": { "@type": "Answer", "text": "Nie. Strefa podaje projektową temperaturę zewnętrzną. OZC zależy dodatkowo od parametrów przegród, mostków, wentylacji, gruntu i temperatur pomieszczeń." } },
        { "@type": "Question", "name": "Czy w strefie V rury zawsze trzeba układać co 10 cm?", "acceptedAnswer": { "@type": "Answer", "text": "Nie. Rozstaw wynika z obciążenia pomieszczenia, powierzchni czynnej, oporu okładziny i temperatury wody." } },
        { "@type": "Question", "name": "Czy strefa określa temperaturę zasilania podłogówki?", "acceptedAnswer": { "@type": "Answer", "text": "Nie. Temperatura zasilania wynika z potrzebnej mocy, konstrukcji podłogi, rozstawu, okładziny i ograniczeń temperatury powierzchni." } },
        { "@type": "Question", "name": "Czy błąd o jedną strefę zawsze kosztuje 6000 zł rocznie?", "acceptedAnswer": { "@type": "Answer", "text": "Nie. Koszt zależy od skali błędu, źródła ciepła, pracy grzałki, taryfy, cen energii, regulacji i rzeczywistej pogody." } },
        { "@type": "Question", "name": "Jaka jest różnica między strefą II a V?", "acceptedAnswer": { "@type": "Answer", "text": "Temperatura projektowa zmienia się z −18°C na −24°C. Przy 20°C wewnątrz ΔT rośnie z 38 do 44 K, czyli o około 15,8% dla składnika proporcjonalnego do ΔT." } },
        { "@type": "Question", "name": "Czy projektowa temperatura zewnętrzna to najniższa temperatura w historii?", "acceptedAnswer": { "@type": "Answer", "text": "Nie. To parametr obliczeniowy i nie musi być równy rekordowi meteorologicznemu ani średniej minimalnej temperaturze sezonu." } },
        { "@type": "Question", "name": "Jak strefa wpływa na dobór pompy ciepła?", "acceptedAnswer": { "@type": "Answer", "text": "Wpływa na obciążenie budynku, ale urządzenie dobiera się także z charakterystyki mocy, COP, temperatury zasilania i punktu biwalentnego." } },
        { "@type": "Question", "name": "Czy wynik dla centrum miasta pasuje do działki w górach?", "acceptedAnswer": { "@type": "Answer", "text": "Nie zawsze. Wysokość, ekspozycja i położenie względem granicy stref mogą wymagać dokładniejszej weryfikacji." } },
        { "@type": "Question", "name": "Czy projektową temperaturę wnętrza ustala się jednakowo dla całego domu?", "acceptedAnswer": { "@type": "Answer", "text": "Nie musi tak być. Pełne OZC uwzględnia temperatury projektowe poszczególnych pomieszczeń." } },
        { "@type": "Question", "name": "Czy ze strefy można obliczyć roczne zużycie energii?", "acceptedAnswer": { "@type": "Answer", "text": "Nie z samej strefy. Roczna energia wymaga modelu całego sezonu, charakterystyki budynku, zysków, wentylacji i regulacji." } }
      ]
    },
    {
      "@type": "Service",
      "@id": "https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/#service",
      "name": "Indywidualny projekt instalacji ogrzewania podłogowego",
      "url": "https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/",
      "provider": { "@id": "https://projekt-ogrzewania.pl/#organization" },
      "areaServed": { "@type": "Country", "name": "Polska" },
      "serviceType": "Projekt ogrzewania podłogowego z obliczeniami cieplnymi i hydraulicznymi"
    }
  ]
}
</script>

<script>
(function () {
  "use strict";

  var guide = document.getElementById("rk-climate-guide");
  if (!guide) {
    return;
  }

  /* WordPress potrafi przebudować kolejność dużych bloków. Ustalamy ją jawnie. */
  var shell = guide.querySelector(".rk-climate-shell");
  var orderedSections = [
    "rk-climate-answer",
    "rk-climate-locator-section",
    "rk-climate-interpretation",
    "rk-climate-zones",
    "rk-climate-ozc",
    "rk-climate-floor",
    "rk-climate-energy",
    "rk-climate-cost-claim",
    "rk-climate-boundaries",
    "rk-climate-heat-pump",
    "rk-climate-errors",
    "rk-climate-data",
    "rk-climate-final",
    "rk-climate-sources",
    "rk-climate-faq",
    "rk-climate-author"
  ];

  orderedSections.forEach(function (sectionId) {
    var section = document.getElementById(sectionId);
    if (section) {
      shell.appendChild(section);
    }
  });

  var zones = {
    1: { roman: "I", temp: -16, label: "Strefa I" },
    2: { roman: "II", temp: -18, label: "Strefa II" },
    3: { roman: "III", temp: -20, label: "Strefa III" },
    4: { roman: "IV", temp: -22, label: "Strefa IV" },
    5: { roman: "V", temp: -24, label: "Strefa V" }
  };

  var cities = [];

  function addGroup(zone, region, names, caution) {
    names.forEach(function (name) {
      cities.push({
        name: name,
        region: region,
        zone: zone,
        caution: caution === true
      });
    });
  }

  addGroup(1, "woj. zachodniopomorskie", [
    "Szczecin", "Świnoujście", "Police", "Goleniów", "Gryfice", "Kołobrzeg",
    "Koszalin", "Białogard", "Darłowo", "Kamień Pomorski", "Międzyzdroje", "Nowogard"
  ], false);
  addGroup(1, "woj. pomorskie", [
    "Gdańsk", "Gdynia", "Sopot", "Słupsk", "Ustka", "Wejherowo", "Rumia",
    "Reda", "Puck", "Hel", "Władysławowo", "Lębork", "Łeba", "Tczew", "Starogard Gdański"
  ], false);
  addGroup(1, "woj. pomorskie — lokalizacja do kontroli", ["Kartuzy", "Kościerzyna"], true);

  addGroup(2, "woj. zachodniopomorskie", [
    "Stargard", "Gryfino", "Choszczno", "Myślibórz", "Wałcz", "Szczecinek", "Drawsko Pomorskie"
  ], false);
  addGroup(2, "woj. lubuskie", [
    "Gorzów Wielkopolski", "Zielona Góra", "Nowa Sól", "Żary", "Żagań", "Świebodzin",
    "Międzyrzecz", "Sulechów", "Kostrzyn nad Odrą", "Słubice", "Krosno Odrzańskie"
  ], false);
  addGroup(2, "woj. wielkopolskie", [
    "Poznań", "Leszno", "Piła", "Gniezno", "Kalisz", "Konin", "Ostrów Wielkopolski",
    "Krotoszyn", "Rawicz", "Gostyń", "Kościan", "Nowy Tomyśl", "Szamotuły", "Września",
    "Śrem", "Jarocin", "Wągrowiec", "Chodzież", "Czarnków", "Złotów"
  ], false);
  addGroup(2, "woj. dolnośląskie", [
    "Wrocław", "Legnica", "Lubin", "Głogów", "Bolesławiec", "Oława", "Oleśnica",
    "Polkowice", "Środa Śląska", "Wołów", "Milicz", "Trzebnica", "Dzierżoniów", "Świdnica"
  ], false);
  addGroup(2, "woj. dolnośląskie — lokalizacja do kontroli", [
    "Wałbrzych", "Jelenia Góra", "Zgorzelec", "Kłodzko"
  ], true);
  addGroup(2, "woj. opolskie", [
    "Opole", "Brzeg", "Nysa", "Kędzierzyn-Koźle", "Kluczbork", "Prudnik", "Krapkowice",
    "Strzelce Opolskie", "Olesno", "Namysłów"
  ], false);

  addGroup(3, "woj. mazowieckie", [
    "Warszawa", "Radom", "Płock", "Ciechanów", "Mława", "Pruszków", "Piaseczno",
    "Legionowo", "Grodzisk Mazowiecki", "Żyrardów", "Sochaczew", "Grójec", "Garwolin",
    "Mińsk Mazowiecki", "Wołomin", "Otwock", "Nowy Dwór Mazowiecki", "Płońsk", "Sierpc",
    "Gostynin", "Kozienice", "Przysucha", "Szydłowiec", "Warka"
  ], false);
  addGroup(3, "woj. łódzkie", [
    "Łódź", "Piotrków Trybunalski", "Skierniewice", "Pabianice", "Zgierz", "Sieradz",
    "Zduńska Wola", "Bełchatów", "Kutno", "Łowicz", "Tomaszów Mazowiecki", "Opoczno",
    "Wieluń", "Radomsko", "Łęczyca", "Rawa Mazowiecka"
  ], false);
  addGroup(3, "woj. małopolskie", [
    "Kraków", "Tarnów", "Oświęcim", "Chrzanów", "Olkusz", "Wadowice", "Bochnia",
    "Brzesko", "Dąbrowa Tarnowska", "Wieliczka", "Niepołomice", "Skawina", "Miechów"
  ], false);
  addGroup(3, "woj. małopolskie — lokalizacja do kontroli", ["Myślenice"], true);
  addGroup(3, "woj. śląskie", [
    "Katowice", "Częstochowa", "Bielsko-Biała", "Gliwice", "Zabrze", "Bytom", "Sosnowiec",
    "Tychy", "Rybnik", "Dąbrowa Górnicza", "Chorzów", "Jaworzno", "Mysłowice", "Ruda Śląska",
    "Siemianowice Śląskie", "Świętochłowice", "Piekary Śląskie", "Jastrzębie-Zdrój", "Żory",
    "Mikołów", "Tarnowskie Góry", "Racibórz", "Wodzisław Śląski", "Lubliniec", "Zawiercie"
  ], false);
  addGroup(3, "woj. świętokrzyskie", [
    "Kielce", "Ostrowiec Świętokrzyski", "Starachowice", "Skarżysko-Kamienna", "Sandomierz",
    "Busko-Zdrój", "Jędrzejów", "Końskie", "Staszów", "Włoszczowa"
  ], false);
  addGroup(3, "woj. kujawsko-pomorskie", [
    "Bydgoszcz", "Toruń", "Włocławek", "Grudziądz", "Inowrocław", "Brodnica", "Chełmno",
    "Świecie", "Nakło nad Notecią", "Żnin", "Mogilno", "Aleksandrów Kujawski", "Lipno"
  ], false);
  addGroup(3, "woj. lubelskie", [
    "Lublin", "Puławy", "Świdnik", "Kraśnik", "Łuków", "Lubartów", "Opole Lubelskie", "Ryki"
  ], false);
  addGroup(3, "woj. podkarpackie", [
    "Rzeszów", "Tarnobrzeg", "Mielec", "Stalowa Wola", "Dębica", "Jarosław", "Przemyśl",
    "Krosno", "Sanok", "Jasło", "Łańcut", "Leżajsk", "Przeworsk", "Ropczyce", "Kolbuszowa"
  ], false);
  addGroup(3, "woj. warmińsko-mazurskie — lokalizacja do kontroli", ["Iława", "Ostróda"], true);

  addGroup(4, "woj. podlaskie", [
    "Białystok", "Łomża", "Bielsk Podlaski", "Hajnówka", "Sokółka", "Augustów", "Grajewo",
    "Zambrów", "Siemiatycze", "Mońki", "Kolno", "Wysokie Mazowieckie"
  ], false);
  addGroup(4, "woj. warmińsko-mazurskie", [
    "Olsztyn", "Elbląg", "Ełk", "Giżycko", "Kętrzyn", "Mrągowo", "Szczytno", "Bartoszyce",
    "Braniewo", "Lidzbark Warmiński", "Nidzica", "Pisz", "Działdowo", "Morąg"
  ], false);
  addGroup(4, "woj. mazowieckie", ["Ostrołęka", "Siedlce", "Maków Mazowiecki", "Przasnysz", "Węgrów", "Sokołów Podlaski"], false);
  addGroup(4, "woj. lubelskie", [
    "Biała Podlaska", "Chełm", "Zamość", "Hrubieszów", "Tomaszów Lubelski", "Włodawa",
    "Biłgoraj", "Krasnystaw", "Janów Lubelski", "Parczew", "Radzyń Podlaski"
  ], false);
  addGroup(4, "woj. podkarpackie — lokalizacja do kontroli", ["Ustrzyki Dolne", "Lesko", "Brzozów"], true);

  addGroup(5, "woj. podlaskie — lokalizacja do kontroli", ["Suwałki", "Sejny"], true);
  addGroup(5, "woj. warmińsko-mazurskie — lokalizacja do kontroli", ["Olecko", "Gołdap"], true);
  addGroup(5, "woj. małopolskie — teren górski", [
    "Zakopane", "Nowy Targ", "Krynica-Zdrój", "Rabka-Zdrój", "Limanowa", "Sucha Beskidzka",
    "Gorlice", "Nowy Sącz", "Muszyna", "Piwniczna-Zdrój", "Szczawnica", "Bukowina Tatrzańska",
    "Białka Tatrzańska"
  ], true);
  addGroup(5, "woj. śląskie — teren górski", ["Żywiec", "Wisła", "Ustroń", "Szczyrk"], true);
  addGroup(5, "woj. dolnośląskie — teren górski", ["Karpacz", "Szklarska Poręba"], true);

  function normalizeText(value) {
    var output = String(value).toLowerCase();
    output = output.replace(/ł/g, "l");
    if (typeof output.normalize === "function") {
      output = output.normalize("NFD");
      output = output.replace(/[\u0300-\u036f]/g, "");
    }
    output = output.replace(/[^a-z0-9]+/g, " ");
    output = output.replace(/^\s+|\s+$/g, "");
    return output;
  }

  cities.forEach(function (city, index) {
    city.id = "rk-climate-option-" + index;
    city.search = normalizeText(city.name + " " + city.region);
  });

  cities.sort(function (a, b) {
    return a.name.localeCompare(b.name, "pl");
  });

  cities.forEach(function (city, index) {
    city.id = "rk-climate-option-" + index;
  });

  var cityInput = document.getElementById("rk-climate-city-input");
  var suggestions = document.getElementById("rk-climate-suggestions");
  var indoorInput = document.getElementById("rk-climate-indoor-temp");
  var referenceZoneInput = document.getElementById("rk-climate-reference-zone");
  var showButton = document.getElementById("rk-climate-show-result");
  var resetButton = document.getElementById("rk-climate-reset");
  var manualZoneInput = document.getElementById("rk-climate-manual-zone");
  var manualButton = document.getElementById("rk-climate-use-manual");
  var placeholder = document.getElementById("rk-climate-placeholder");
  var result = document.getElementById("rk-climate-result");
  var scenarioReference = document.getElementById("rk-climate-scenario-reference");
  var scenarioTarget = document.getElementById("rk-climate-scenario-target");
  var referenceLoad = document.getElementById("rk-climate-reference-load");
  var currentMatches = [];
  var activeIndex = -1;
  var selectedCity = null;
  var selectedZone = null;

  function formatNumber(value, digits) {
    return Number(value).toLocaleString("pl-PL", {
      minimumFractionDigits: digits,
      maximumFractionDigits: digits
    });
  }

  function closeSuggestions() {
    suggestions.classList.remove("is-open");
    cityInput.setAttribute("aria-expanded", "false");
    cityInput.removeAttribute("aria-activedescendant");
    activeIndex = -1;
  }

  function openSuggestions() {
    suggestions.classList.add("is-open");
    cityInput.setAttribute("aria-expanded", "true");
  }

  function scoreCity(city, query) {
    var name = normalizeText(city.name);
    if (name === query) {
      return 0;
    }
    if (name.indexOf(query) === 0) {
      return 1;
    }
    if (city.search.indexOf(query) > -1) {
      return 2;
    }
    return 99;
  }

  function findMatches(query) {
    var matches = [];
    cities.forEach(function (city) {
      var score = scoreCity(city, query);
      if (score < 99) {
        matches.push({ city: city, score: score });
      }
    });
    matches.sort(function (a, b) {
      if (a.score !== b.score) {
        return a.score - b.score;
      }
      return a.city.name.localeCompare(b.city.name, "pl");
    });
    return matches.slice(0, 9).map(function (item) {
      return item.city;
    });
  }

  function updateActiveSuggestion() {
    var buttons = suggestions.querySelectorAll(".rk-climate-suggestion");
    buttons.forEach(function (button, index) {
      if (index === activeIndex) {
        button.classList.add("is-active");
        button.setAttribute("aria-selected", "true");
        cityInput.setAttribute("aria-activedescendant", button.id);
        button.scrollIntoView({ block: "nearest" });
      } else {
        button.classList.remove("is-active");
        button.setAttribute("aria-selected", "false");
      }
    });
  }

  function selectCity(city) {
    selectedCity = city;
    selectedZone = city.zone;
    cityInput.value = city.name;
    closeSuggestions();
    scenarioTarget.value = String(city.zone);
    renderResult();
  }

  function renderSuggestions(query) {
    suggestions.textContent = "";
    currentMatches = findMatches(query);
    activeIndex = -1;

    if (currentMatches.length === 0) {
      var noResult = document.createElement("div");
      noResult.className = "rk-climate-no-result";
      noResult.textContent = "Brak miejscowości w bazie. Skorzystaj z ręcznego wyboru po zweryfikowaniu strefy.";
      suggestions.appendChild(noResult);
      openSuggestions();
      return;
    }

    currentMatches.forEach(function (city, index) {
      var button = document.createElement("button");
      var strong = document.createElement("strong");
      var small = document.createElement("small");
      button.type = "button";
      button.className = "rk-climate-suggestion";
      button.id = city.id;
      button.setAttribute("role", "option");
      button.setAttribute("data-index", String(index));
      strong.textContent = city.name;
      small.textContent = city.region + " · strefa " + zones[city.zone].roman;
      button.appendChild(strong);
      button.appendChild(small);
      button.addEventListener("click", function () {
        selectCity(city);
      });
      suggestions.appendChild(button);
    });
    openSuggestions();
  }

  cityInput.addEventListener("input", function () {
    selectedCity = null;
    selectedZone = null;
    var query = normalizeText(cityInput.value);
    if (query === "") {
      closeSuggestions();
      return;
    }
    renderSuggestions(query);
  });

  cityInput.addEventListener("keydown", function (event) {
    if (event.key === "ArrowDown") {
      event.preventDefault();
      if (currentMatches.length > 0) {
        activeIndex += 1;
        if (activeIndex >= currentMatches.length) {
          activeIndex = 0;
        }
        updateActiveSuggestion();
      }
      return;
    }
    if (event.key === "ArrowUp") {
      event.preventDefault();
      if (currentMatches.length > 0) {
        activeIndex -= 1;
        if (activeIndex < 0) {
          activeIndex = currentMatches.length - 1;
        }
        updateActiveSuggestion();
      }
      return;
    }
    if (event.key === "Enter") {
      if (activeIndex > -1) {
        event.preventDefault();
        selectCity(currentMatches[activeIndex]);
      }
      return;
    }
    if (event.key === "Escape") {
      closeSuggestions();
    }
  });

  document.addEventListener("click", function (event) {
    var inputWrap = cityInput.parentNode;
    if (inputWrap.contains(event.target) === false) {
      closeSuggestions();
    }
  });

  function findExactCity(value) {
    var query = normalizeText(value);
    var found = null;
    cities.forEach(function (city) {
      if (found === null) {
        if (normalizeText(city.name) === query) {
          found = city;
        }
      }
    });
    return found;
  }

  function percentageChange(targetDelta, referenceDelta) {
    return ((targetDelta / referenceDelta) - 1) * 100;
  }

  function formatPercentage(value) {
    if (Math.abs(value) < 0.05) {
      return "0,0%";
    }
    var sign = "";
    if (value > 0) {
      sign = "+";
    }
    return sign + formatNumber(value, 1) + "%";
  }

  function renderResult() {
    if (selectedZone === null) {
      return;
    }
    var zone = zones[selectedZone];
    var indoor = Number(indoorInput.value);
    var referenceZone = zones[Number(referenceZoneInput.value)];
    var delta = indoor - zone.temp;
    var referenceDelta = indoor - referenceZone.temp;
    var relative = percentageChange(delta, referenceDelta);
    var placeName = "Strefa wybrana ręcznie";
    var regionName = "Wynik na podstawie strefy potwierdzonej poza wyszukiwarką";
    var statusName = "Wymaga źródła";
    var noteText = "Ręczny wybór powinien wynikać z dokumentacji lokalizacji albo weryfikacji projektanta.";

    if (selectedCity !== null) {
      placeName = selectedCity.name;
      regionName = selectedCity.region;
      if (selectedCity.caution === true) {
        statusName = "Sprawdź dokładnie";
        noteText = "Lokalizacja leży na obszarze, na którym granica strefy, wysokość lub ukształtowanie terenu mogą wymagać dokładniejszej weryfikacji działki.";
      } else {
        statusName = "Wstępnie przypisana";
        noteText = "Wynik jest pomocą edukacyjną. Przed wykonaniem obliczeń projektowych potwierdź strefę dla dokładnego adresu inwestycji.";
      }
    }

    document.getElementById("rk-climate-result-place").textContent = placeName;
    document.getElementById("rk-climate-result-region").textContent = regionName;
    document.getElementById("rk-climate-result-zone").textContent = "Strefa " + zone.roman;
    document.getElementById("rk-climate-result-outdoor").textContent = zone.temp + "°C";
    document.getElementById("rk-climate-result-indoor").textContent = indoor + "°C";
    document.getElementById("rk-climate-result-delta").textContent = delta + " K";
    document.getElementById("rk-climate-result-relative").textContent = formatPercentage(relative);
    document.getElementById("rk-climate-result-status").textContent = statusName;
    document.getElementById("rk-climate-location-note").querySelector("p").textContent = noteText;
    placeholder.style.display = "none";
    result.classList.add("is-visible");
    updateScenario();
    updateChart();
  }

  function renderInputError() {
    placeholder.style.display = "flex";
    placeholder.querySelector("h4").textContent = "Wybierz miejscowość z listy";
    placeholder.querySelector("p").textContent = "Jeżeli miejscowości nie ma w bazie, użyj ręcznego wyboru dopiero po potwierdzeniu strefy.";
    result.classList.remove("is-visible");
  }

  showButton.addEventListener("click", function () {
    if (selectedCity === null) {
      var exact = findExactCity(cityInput.value);
      if (exact !== null) {
        selectCity(exact);
      } else {
        renderInputError();
      }
    } else {
      renderResult();
    }
  });

  manualButton.addEventListener("click", function () {
    var value = Number(manualZoneInput.value);
    if (zones[value]) {
      selectedCity = null;
      selectedZone = value;
      cityInput.value = "";
      scenarioTarget.value = String(value);
      renderResult();
    }
  });

  function parseLoad() {
    var raw = String(referenceLoad.value).replace(",", ".");
    var value = Number(raw);
    if (Number.isFinite(value) === false) {
      return null;
    }
    if (value <= 0) {
      return null;
    }
    return value;
  }

  function updateScenario() {
    var indoor = Number(indoorInput.value);
    var referenceId = Number(scenarioReference.value);
    var targetId = Number(scenarioTarget.value);
    var reference = zones[referenceId];
    var target = zones[targetId];
    var referenceDelta = indoor - reference.temp;
    var targetDelta = indoor - target.temp;
    var change = percentageChange(targetDelta, referenceDelta);
    var load = parseLoad();
    var title = "Strefa " + reference.roman + " → strefa " + target.roman + ": " + formatPercentage(change) + " zmiany ΔT";
    var copy = "Przy " + indoor + "°C wewnątrz różnica temperatur zmienia się z " + referenceDelta + " K na " + targetDelta + " K.";

    if (load !== null) {
      var targetLoad = load * targetDelta / referenceDelta;
      copy += " Uproszczone przeskalowanie wyniku " + formatNumber(load, 1) + " kW daje około " + formatNumber(targetLoad, 2) + " kW. To scenariusz edukacyjny, nie nowe OZC.";
    } else {
      copy += " Wpisz rzeczywisty wynik OZC, jeżeli chcesz zobaczyć orientacyjne przeskalowanie dla tego samego budynku.";
    }

    document.getElementById("rk-climate-scenario-title").textContent = title;
    document.getElementById("rk-climate-scenario-copy").textContent = copy;
  }

  function updateChart() {
    var indoor = Number(indoorInput.value);
    var selected = selectedZone;
    var reference = Number(scenarioReference.value);
    var maxDelta = indoor - zones[5].temp;
    var chartItems = document.querySelectorAll(".rk-climate-bar-item");

    chartItems.forEach(function (item) {
      var zoneId = Number(item.getAttribute("data-zone"));
      var delta = indoor - zones[zoneId].temp;
      var size = delta / maxDelta * 100;
      var fill = item.querySelector(".rk-climate-bar-fill");
      item.querySelector(".rk-climate-bar-value").textContent = delta + " K";
      fill.style.setProperty("--rk-desktop-height", size + "%");
      fill.style.setProperty("--rk-mobile-width", size + "%");
      item.classList.remove("is-selected");
      item.classList.remove("is-reference");
      if (selected !== null) {
        if (zoneId === selected) {
          item.classList.add("is-selected");
        }
      }
      if (zoneId === reference) {
        item.classList.add("is-reference");
      }
    });

    document.getElementById("rk-climate-chart").setAttribute("aria-label", "Porównanie ΔT dla temperatury wewnętrznej " + indoor + " stopni Celsjusza. Zakres od " + (indoor + 16) + " K w strefie I do " + (indoor + 24) + " K w strefie V.");
  }

  indoorInput.addEventListener("change", function () {
    if (selectedZone !== null) {
      renderResult();
    } else {
      updateScenario();
      updateChart();
    }
  });

  referenceZoneInput.addEventListener("change", function () {
    if (selectedZone !== null) {
      renderResult();
    }
  });

  scenarioReference.addEventListener("change", function () {
    updateScenario();
    updateChart();
  });
  scenarioTarget.addEventListener("change", function () {
    updateScenario();
  });
  referenceLoad.addEventListener("input", function () {
    updateScenario();
  });

  resetButton.addEventListener("click", function () {
    selectedCity = null;
    selectedZone = null;
    cityInput.value = "";
    indoorInput.value = "20";
    referenceZoneInput.value = "3";
    manualZoneInput.value = "";
    scenarioReference.value = "3";
    scenarioTarget.value = "5";
    referenceLoad.value = "";
    result.classList.remove("is-visible");
    placeholder.style.display = "flex";
    placeholder.querySelector("h4").textContent = "Wybierz miejscowość";
    placeholder.querySelector("p").textContent = "Wynik nie poda gotowej mocy domu. Pokaże właściwy punkt startowy do obliczeń.";
    closeSuggestions();
    updateScenario();
    updateChart();
  });

  updateScenario();
  updateChart();
}());
</script>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/strefy-klimatyczne-w-polsce-a-ogrzewanie-podlogowe-i-ozc-dlaczego-blad-o-jedna-strefe-klimatyczna-kosztuje-cie-6000-zl-rocznie/">Strefy klimatyczne w Polsce – wyszukiwarka miejscowości, temperatura projektowa i OZC.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
